1.类与对象的概念
标识符其实是一个对象的引用,类是对象的抽象和归纳,对象是类的实例
2.类的成员
类的数据成员会自动默认初始化
3.java 中引用和值传递
Java中参数传递即使是使用引用类型,都会等同于值传递;可以通过数组来进行地址传值
例子
注意:下面的例子并不会交换值
int i=0,j=0;
try{
//构建一个输入对象,类似于cin,cout;
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String inputLine1 = in.readLine();
i = Integer.parseInt(inputLine1);
String inputLine2 = in.readLine();
j = Integer.parseInt(inputLine2);
}
catch (Exception e){
System.out.println("用户没有输入一个合法值");
}
System.out.println("交换前:i="+i + ",j=" + j);
swap(i,j);
System.out.println("交换后:i="+i + ",j=" + j);
4.对象的存储方式
@1.每一对象的数据成员占据不同的内存区域
@2.所有对象的方法成员共享同一段程序代码
5.访问控制
* public,protect,default,private可以用于修饰成员变量和方法,如果是default,则成员只能由同一程序包中的类访问。
* 对于本程序包中的类,效果相当于public,对其他程序包中的类而言,效果相当于private;
* 修饰类的关键字只能是default或public
6.构造方法
* 每一个类都有构造方法,构造方法根据参数的不同,可以被重载;
* 类还可以有初始化块语句,初始化块语句先于构造方法执行;
* 在继承中,构建子类对象前会先调用父类的构造函数,如果父类和子类的构造函数都是无参的,那么会自动增加一个无参构造函数;
* 如果子类是有参的,并且需要调用父类有参的构造函数,那么需要在子类构造函数开头写上super(refer)函数;
* 如果子类不需要调用父类的有参构造函数,则不需要使用super函数,但要保证父类中有一个无参构造函数
示例
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
class parent {
parent(){
System.out.println("parent");
}
parent(int i){
System.out.println("parent"+i);
}
}
public class Main extends parent{
Main(){
System.out.println("child");
}
Main(int i){
super(i);
System.out.println("child"+i);
}
public static void main(String[] args) {
new Main();
new Main(4);
System.out.println("Hello World!");
}
}