现在学习java se
书上的代码如下:
import java.util.*;
public class PersonClass{
private int No;
private String name;
private boolean sex;
private Date birthday; public PersonClass(){}
public personClass(int No,String name,boolean sex,int year,int month,int day){
this.No=No;
this.name=new String(name);
this.sex=sex;
this.birthday=new Date(year,month-1,day);
}
......这里的name和birthday都用了new创建了,为什么No和sex不用new创建?那些变量需要用new创建的?
谢谢
书上的代码如下:
import java.util.*;
public class PersonClass{
private int No;
private String name;
private boolean sex;
private Date birthday; public PersonClass(){}
public personClass(int No,String name,boolean sex,int year,int month,int day){
this.No=No;
this.name=new String(name);
this.sex=sex;
this.birthday=new Date(year,month-1,day);
}
......这里的name和birthday都用了new创建了,为什么No和sex不用new创建?那些变量需要用new创建的?
谢谢
8个基本类型直接
,这些类型直接使用;
而每种原生数据类型都对应有包装类型:Byte、Character、Short、Integer、Long、Float、Double、Boolean,这些类型是引用数据类型。
使用方法:如:Integer i = new Integer(1);或者Integer i = 1;(这样做可以是因为在JDK5中加入了自动装箱和拆箱的新特性)
String类型是引用数据类型,但是有点特别,String str = new String("sss");和String str = "sss";都可以,只是在内存中的保存形式不同!
平常用的一些类或者自己写的类都是引用类型,一般都需要用new关键字创建,为其分配内存!
,这些类型直接使用;
而每种原生数据类型都对应有包装类型:Byte、Character、Short、Integer、Long、Float、Double、Boolean,这些类型是引用数据类型。
”
Byte与byte等是不一样的啊?
byte就是一个数据类型
Byte是一个类,封装了一个byte数据的类只要你是想用构造函数去建立一个类的对象都要用new的!当然还有很多其他不需要new建立的对象的方式(但是这种方式最底层的实现代码还是要new的)!
这些属于基本类型,String Date属于复合类型,它们都可以直接定义一个变量并且赋值.
除去这些以外,当我们需要用到一个类定义的方法变量等内容时,我们必须使用new去创建一个类的对象实例去调用,