后面的知识,与面向对象的基础知识有很大联系,在面向对象中,先自定义类,然后声明属性,声明方法。类不能直接使用,要通过创建实例化对象才可以。其实大家会发现自定义类中的普通方法,属于非静态方法,相反,主类中的main主方法属于静态方法,静态方法调用非静态方法必须要实例化对象才能使用,调用的方法和普通方法的调用一样。
2016-10-14
其实封装这一节,在一些java书上讲的就是,访问控制符,访问控制符的作用是说明被声明的内容(类,属性,方法,构造方法)
访问控制符主要有4个:public -公共权限(可以说没有权限) private -私有权限 protected-受保护的 无访问控制符-默认的
首先明确一点,在面向对象中,提到类与对象的概念,在同一包下不同文件下可以自定义n个不同名的类,也就是说在自定义类中声明属于它自己的属性信息,以及方法,那么借助关键字private,进行私有控制权限。不允许外部的类直接访问被说明的内容,外部的程序要想访问就要在自定义的类中声明对应的get/set方法来读取/存储数据
访问控制符主要有4个:public -公共权限(可以说没有权限) private -私有权限 protected-受保护的 无访问控制符-默认的
首先明确一点,在面向对象中,提到类与对象的概念,在同一包下不同文件下可以自定义n个不同名的类,也就是说在自定义类中声明属于它自己的属性信息,以及方法,那么借助关键字private,进行私有控制权限。不允许外部的类直接访问被说明的内容,外部的程序要想访问就要在自定义的类中声明对应的get/set方法来读取/存储数据
2016-10-14
static int score1 = 78;
static int score2 = 89;
public static int getSum(){
return score1+score2;
}
public static void main(String[] args) {
System.out.println("总成绩:"+getSum());
}
static int score2 = 89;
public static int getSum(){
return score1+score2;
}
public static void main(String[] args) {
System.out.println("总成绩:"+getSum());
}
2016-10-13
类里面加了private,那有参的构造方法还能正常运行,这怎么理解?创建phone2时候赋的值是赋给phone2对象的screen?这个screen到底是类的变量还是对象的变量,还是类与对象共有的变量?
2016-10-13
其实,总结来说:类名 对象 名 = new 类名();()括号就代表构造方法,括号里面放的就是实际参数。可以在括号里直接对属性信息进行赋值初始化,比普通的方法结构代码更简洁
注意:当你敲 类名 对象名 =null; 进行编译,系统会报错,因为没有实例化对象,可以联系现实逻辑来讲,我只有拥有一个实体的事物,才能去做某件事。所以只有在实例化对象之后,编译器才会自动生成一个无参的构造方法
注意:当你敲 类名 对象名 =null; 进行编译,系统会报错,因为没有实例化对象,可以联系现实逻辑来讲,我只有拥有一个实体的事物,才能去做某件事。所以只有在实例化对象之后,编译器才会自动生成一个无参的构造方法
2016-10-13
Inner 类中定义的 test() 方法可以直接访问 Outer 类中的数据,而不受访问控制符的影响,如直接访问 Outer 类中的私有属性a
2016-10-13