万链网站做的怎么样?/懂得网站推广
4. 面向对象程序设计
文章目录
- 4. 面向对象程序设计
- 4.1 类的定义
- 4.2 this关键字
- 4.3 static关键字
- 4.4 标准类制作
- 4.5 访问权限修饰符
- 4.6 封装
4.1 类的定义
-
基本格式
class Student {// 成员变量int id;String name;int age;// 成员方法void goStudy() {System.out.println(name + "go to study");}}
4.2 this关键字
-
this修饰的变量用于指代成员变量,其主要作用是(区分局部变量和成员变量的重名问题)
class Student {//成员变量private int age;//提供get/set方法public void setAge(int age) {this.age = age;}public int getAge() {return age;}//成员方法public void show() {System.out.println("age = " + age);} }
4.3 static关键字
- 不需要创建对象可以直接调用其类方法
- 访问的是静态变量,不能直接访问实例方法,需要创建对象。
static class CircleArea {static double getArea(double r) {return Math.PI * r * r;}
}
public static void main(String[] args) {double circleArea = CircleArea.getArea(3.5);System.out.println(circleArea);
}
4.4 标准类制作
-
类名需要见名知意
-
成员变量使用private修饰
-
提供至少两个构造方法
无参构造方法
带全部参数的构造方法
-
get和set方法
-
提供每一个成员变量对应的setXxx()和getXxx()
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 void show() {System.out.println("name = " + name + "," + "age = " + age);}
}
/*创建对象并为其成员变量赋值的两种方式1:无参构造方法创建对象后使用setXxx()赋值2:使用带参构造方法直接创建带有属性值的对象
*/
public class StudentDemo {public static void main(String[] args) {//无参构造方法创建对象后使用setXxx()赋值Student s1 = new Student();s1.setName("DZJ");s1.setAge(18);s1.show();//使用带参构造方法直接创建带有属性值的对象Student s2 = new Student("DZJ",18);s2.show();}
}
4.5 访问权限修饰符
- private
- protect
- public
- package
4.6 封装
-
将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问
-
成员变量private,提供对应的getXxx()/setXxx()方法
class Student {//成员变量private int Age;//提供get/set方法public void setAge(int age) {Age = age;}public int getAge() {return Age;}//成员方法public void show() {System.out.println("Age = " + getAge());} }