Java面向对象
第二章 面向对象进阶
2.1.1成员变量的概述:
变量可分为成员变量和局部变量,成员变量是在类范围内定义的变量,局部变量是在方法中定义的变量,Java程序中的变量划分如图所示。
2.1.2成员变量的使用 :
[修饰符] [static] [final]<变量类型><变量名>
1
2.2 this 关键字
Java提供了一个this关键字,this关键字总是指向调用该方法的对象
2.3 隐藏和封装
2.3.1封装的概念
现实生活中,封装的例子随处可见,比如药店出售的胶囊类药品,我们只看得到胶囊,却看不到胶囊里面有什么。
对一个类或对象实现良好的封装,可以实现以下目的:
(1)隐藏类的实现细节
(2)让使用者值通过实现预定的方法访问数据,从而可以在该方法中加入控制逻辑,限制对象属性不合理访问
(3)可进行数据检查,有利于保证对象信息完整性
(4)便于修改,提高代码可维护性
实现良好的封装,从如下两个方面考虑:
(1)隐藏对象的属性和实现细节,不允许外部直接访问
暴露出方法,让方法控制对这些属性进行安全的访问和操作
2.3.2 使用访问控制符
private只是Java访问修饰符的一种,除此之外,Java还提供default、protected和public 如下图所示
2.4 static关键字
2.4.1 静态成员变量
类的成员变量包含静态变量(也称类变量)和实例变量。
本章小结:在学习第二章时主要掌握
1、比较成员变量和局部变量的区别?
2、简述this关键字的含义和用法
3、按优先级列出访问控制修饰符
4、简述static关键字的含义和用法
个人课后练习
目的:如何白嫖舍友
新建一个白嫖类
1.public class 白嫖类 {
2. private String zhuangtai;
3. private String name;
4. private int num;
5. public void zhuangtai1 (String zhuangtai ,String name,int 6.num) {
7. this.zhuangtai = zhuangtai;
8. this.name = name;
9. this.num = num;
10. System.out.println("佑铭白嫖了穿着"+this.zhuangtai+"的"+this.name+",他正在享受第"+this.num+"的快感");
11. }
再创建一个白嫖对象
1.package java面向对象;
2.import java.util.Scanner;
3.public class 白嫖对象 {
4.
5. public static void main(String[] args) {
6. 白嫖类 bp = new 白嫖类();
7. System.out.println("请依次输入他的穿着,姓名,和次数");
8. Scanner shuru = new Scanner(System.in);
9. bp.zhuangtai1(shuru.next(), shuru.next(), 10.shuru.nextInt());
11.
12. }
13.
14.}
最后这是运行操作和结果
在使用封装类时候,就是简单的将传参的数赋值给封装的那个 private 开头的那个值里面