Java学习9——面向对象
(重点:内存分析)
类的定义
1 //用class关键字定义一个类 2 class Person { 3 //成员变量定义 4 private int id; 5 private int age = 20; 6 //方法定义 7 public int getAge() { 8 return age; 9 } 10 public void setAge(int i) { 11 age = i; 12 } 13 public int getId() { 14 return id; 15 } 16 }
成员变量
1、成员变量可以使用Java语言中的任何一种数据类型(包括基本类型和引用类型);
2、成员变量的作用范围为整个类体;
3、在定义成员变量时可以对其初始化,如果不对其初始化,Java使用默认的值对其初始化
引用
1、Java语言中除基本类型之外的变量类型都称之为引用类型。
2、Java中通过引用对对象进行操作
1 //声明了一个String类型的引用变量,但并没有使它指向一个对象 2 String s; 3 //使用new语句创建了一个String类型的对象并用s指向它以后可以通过s完成对其的操作 4 s = new String("Hello world!!");
构造方法
1、使用new + 构造方法创建一个新的对象
2、构造函数是定义在Java类中的一个用来初始化对象的函数
3、构造函数与类同名且没有返回值
4、当没有指定构造函数时,编译器为类自动添加默认构造函数
1 public class Person { 2 private int id; 3 private int age = 20; 4 //构造函数 5 Person(int n, int i) { 6 id = n; 7 age = i; 8 } 9 public static void main(String args[]) { 10 //创建对象时,使用构造函数初始化对象的成员变量 11 Person tom = new Peron(1, 25); 12 } 13 }
方法的重载
1、一个类中可以定义有相同名字和返回类型,但参数不同(个数和类型)的多个方法。
2、调用时,会根据不同的参数表选择对应的方法
3、同样可以用于构造函数的重载
1 public class Person { 2 private int id; 3 private int age = 20; 4 //构造函数 5 Person(int n, int i) { 6 id = n; 7 age = i; 8 } 9 10 void info() { 11 System.out.println("My id is " + id); 12 } 13 14 //重载info方法 15 void info(String t) { 16 System.out.println(t + " id is " + id); 17 } 18 19 public static void main(String args[]) { 20 //创建对象时,使用构造函数初始化对象的成员变量 21 Person tom = new Peron(1, 25); 22 p.info(); 23 p.info("Lily"); 24 } 25 }
推荐命名规则
1、类名的首字母大写
2、变量名和方法名的首字母小写
3、运用驼峰标识