您的位置:首页 > 其它

类和对象(一)

2015-07-25 10:37 435 查看
1.类是对象的抽象,对象是类的实例,类中只包含属性和方法,属性尽量用名词,首字母小写;方法尽量动宾短语,首字母小写。

2.类的属性(全局变量)(成员变量)–可不赋初值

访问修饰符 类型 属性名(public int age)



可修饰属性和方法,不写的话默认为default

3.方法 访问修饰符 [其他修饰符static final……] 返回值类型 方法名称(参数1,参数2,……){

} 除类的属性外,即非全局变量必须赋初值

4.高内聚低耦合

5.方法中有返回值必须用return,方法执行到return自动结束(分支语句除外),即使return下边还有语句也不执行且报错。return返回值只可以有一个。

6.方法之间可相互调用,但不能嵌套定义。

7.基本数据类型传值,引用数据类型传地址,注意封装类。

封装类方法测试

public static void main(String[] args) {
//封装类Integer 引用数据类型   拆箱装箱
Integer i=new Integer(10);
Integer j=new Integer(10);
System.out.println(i==j);
System.out.println(i.equals(j));
//自动拆箱装箱
Integer k=10;
//自动装箱,等价于Integer k=new Integer(10);
System.out.println(j==k);
int h=new Integer(10);
//自动拆箱,等价于int h=10;
int g=new Integer(10);
System.out.println(h==g);
System.out.println(k==h);//k自动拆包后与h比较
Boolean b1=new Boolean(true);
Boolean b2=new Boolean(true);
System.out.println(b1==b2);
}


false true false true true false

8.可变参数 jre1.5

public void readBook(String... book){
for (int i = 0; i < book.length; i++) {
System.out.println("阅读了"+book);
}//可变参数,在Jre1.5中可以,当初数组来处理
}
//在main中创建一个对象t1
t1.readBook("西游记","三国")


9.方法内定义一个变量,和全局变量名重复,则调用该变量时以方法内定义的为准。

10.JAVA中类的继承是单继承,一个类只能继承一个父类,一个父类可以有多个子类,继承用extends。

11.对象初始化顺序,父类属性–父类构造器–子类属性–子类构造器

12.方法重载 同类中方法名相同,参数不同,返回值类型无关

方法重写 子类重写父类的方法 方法名、参数、返回值类型必须与父类相同,访问修饰符不能比父类更严格。

13.super

a调用父类的方法super.run(); b调用父类的属性 super.age;

c子类构造器默认调用父类无参构造器即super(); super()可写可不写,写的话必须写在第一行。

d在子类构造器中第一行加入super(“”);(括号内有参数),可调用父类有参构造器,不可省略。

public class Bus extends Car{
public int passengerNumber;
public String busBrand=super.brand;  //super调用父类的属性
public Bus(){
super();//调用父类无参构造器,可写可不写
System.out.println("调用bus无参构造器");
}
public Bus(int passengerNumber){
super(5);//调用父类有参构造器,必须写
System.out.println("调用bus有参构造器"+passengerNumber);
}
public void run(){//方法重写 方法名、参数名、返回值类型必须一样 子类重写父类
super.run();   //super调用父类的方法
}
public void getMoney(){
System.out.println("上车投币"+passengerNumber);
}
}


14.this 调用使用它的对象的方法或者属性

a调用使用它的对象的方法或属性 this.age this.run();

b调用本类的另一个构造器

public class Texi extends Car{
public int id;

public int getId() {
return id;
}

public void setId(int id) {
this.id = id;  //调用该方法的对象的属性
}
public Texi(){  //先调用父类无参构造器super();
this(1);  //调用本类中另一个构造器,注意参数
}
public Texi(int id){//默认调用父类无参构造器super();
this.id=id;
this.run();   //调用该方法对象的方法
}
public void run(){
System.out.println("Texi正在运行");
}
}


15.DecimalFormat格式化十进制数字,还可表示百分数等。

16.Math类:log(double a)即lna log10(double a)即lga

sqrt()取平方根,cbrt取立方根,pow(a,b) a的b次方

ceil()大于或等于参数的整数 floor()小于或等于参数的整数

rint()最接近参数的整数(.5的取欧整数)

round()加0.5后取最接近的整数(小数大于的5整数+1,小于五的整数-1) abs()取绝对值 math.random() 默认取0.0(含)-1.0(不含)

BigInteger 大整数 BigDecimal 大小数

17. 只有属性和set、get方法的类一般叫JavaBean

18. main函数中String[] args可传参,从run as–run configurations中Arguments中设置参数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: