对象:
java程序中的对象:
本质上是一种特殊的数据结构
对象是由类new出来的,有了类就可以创建对象
对象在计算机的执行原理:
- student s1=new student();
- 每次new student(),就是在堆内存中开辟一块内存区域代表一个学生对象
- s1变量里面记住的学生对象的地址
类:
类中定义的变量也叫成员变量(对象的属性),类中定义的方法也称成员方法(对象的行为)
成员变量存在默认值(0.0 or null)
一个代码文件,可以写多个class类,但只能一个用public修饰
//用public修饰的class必须成为文件名
对象与对象之间的数据不会相互影响,但多个变量指向同一个对象就会相互影响
this:
this就是一个变量(c++的this是指针),可以用在方法上,来指定当前对象。
构造器:
创建对象时,对象就会调用构造器。
public student(){System.out.println("无参构造触发");}public student(String name,double chinese,double math){System.out.println("有参构造被触发");this.name=name;this.chinese=chinese;this.math=math;}
构造器的注意事项:
1 类在设计时,如果不写析构器,java会为类自动生成一个无参构造器
2 一旦定义了有参构造器,java就不会为为类自动生成一个无参构造器,需要自己写
以下是一个学生类:
public class student {public student(){System.out.println("无参构造触发");}public student(String name,double chinese,double math){System.out.println("有参构造被触发");this.name=name;this.chinese=chinese;this.math=math;}public void printTotalsum(){System.out.println(name+"的总成绩是"+(chinese+math));}public void printave(){System.out.println(name+"的平均成绩是"+(chinese+math)/2.0);}String name;double chinese;double math;}
实体类:
这个类中成员变量都要私有,且对外要有get(),set(),函数
类中必须有一个公共无参构造器