我们学习编程是为了什么? 为了把我们日常生活中实物用学习语言描述出来 我们如何描述现实世界事物? 属性 就是该事物的描述信息(事物身上的名词) 行为 就是该事物能够做什么(事物身上的动词) Java中最基本的单位是类,Java中用class描述事物也是如此 成员变量 就是事物的属性 成员方法 就是事物的行为 定义类其实就是定义类的成员(成员变量和成员方法) 成员变量 和以前定义变量是一样的,只不过位置发生了改变。在类中,方法外。 成员方法 和以前定义方法是一样的,只不过把static去掉,后面在详细讲解static的作用。 类和对象的概念 a:类:是一组相关的属性和行为的集合(我们班所有的同学都具备相同的属性和行为,比如:姓名,年龄,学习,这样就把所有的学生成为学生类) 对象:是该类事物的具体体现(说某个同学时,他都具备自己特有的属性和行为) 举例: 类 学生 对象 具体的某个学生就是一个对象 比如:车是一个类,具体的开的奔驰、宝马,就是对象 下面就是一个很简单的学生类: public class Student { //成员变量 //姓名 String name; //年龄 int age; //成员方法 //学习的方法 public void study() { System.out.println("好好学习,天天向上"); } //吃饭的方法 public void eat() { System.out.println("学习饿了要吃饭"); } } 类的使用: 使用一个类,其实就是使用该类的成员。(成员变量和成员方法)而我们要想使用一个类的成员,就必须先拥有该类的对象,我们就要创建该类的对象。 格式: 类名 对象名 = new 类名(); 对象如何访问成员呢? 成员变量: 对象名.成员变量 成员方法: 对象名.成员方法(...) private关键字 直接使用对象名访问成员变量,会存在数据的安全问题 这个时候,我们就应该思考能不能让外界不要直接访问成员变量? 用private关键字 private: 是一个修饰符 可以修饰成员变量,也可以修饰成员方法 被private修饰的成员只能在本类中被访问 针对被private修饰的成员变量,我们会相应的给出getXxx()和setXxx()用于获取和设置成员变量的值, 封装概述 是面向对象三大特征之一 是面向对象编程语言对客观世界的模拟,客观世界里成员变量都是隐藏在对象内部的,外界无法直接操作和修改。就像刚才说的年龄。 封装原则: 将不需要对外提供的内容都隐藏起来。 把属性隐藏,提供公共方法对其访问。 成员变量private,提供对应的getXxx()/setXxx()方法 好处: 通过方法来控制成员变量的操作,提高了代码的安全性 把代码用方法进行封装,提高了代码的复用性 this关键字 A:this:代表所在类的对象引用 方法被哪个对象调用,this就代表那个对象 B:什么时候使用this呢 局部变量和成员变量重名 标准的类代码和测试类: a:成员变量 b:构造方法 无参构造方法 带参构造方法 c:成员方法 getXxx() setXxx() 给成员变量赋值的方式 a:无参构造方法+setXxx() b:带参构造方法 下面就是一个标准的学生类: public class Student { //成员变量 private String name; private int age; //构造方法 public Student() {} public Student(String name,int age) { this.name = name; this.age = age; } //成员方法 public void setName(String name) { this.name = name; } public String getName() { return name; } public void setAge(int age) { this.age = age; } public int getAge() { return age; } } 测试类 public class StudentTest { public static void main(String[] args) { //无参构造方法+setXxx() Student s = new Student(); s.setName("林青霞"); s.setAge(30); System.out.println(s.getName()+"---"+s.getAge()); }
|