第二十五作业——常用类
第二十五作业——常用类
目录
1.——内部类
成员内部类
- 在 Body 类中创建 Head 内部类
- 并在两个类中创建 private 的属性age
- 使用三种方法来 new head
- 通过内部类来调用两个 age
- 成员内部类 能不能用静态成员???
静态内部类
- 在 Body 类中创建 Head 静态内部类
- 并在两个类中创建 private 的属性 age name 一个静态 一个非静态
- 创建静态和非静态两种方法来打印所有属性 并调用
- new Body.Head(); 没有括号这是为了,显示包含关系 | 有括号表示 实例化的包含
- 静态不能用 this 关键字
局部内部类
- 在 Body 类中创建 Head 局部内部类
- 在 Body 类中创建 实例变量 age | 在局部内部类所在的方法中 定义局部变量 age | 在局部内部类中创建 实例变量 age (**private **)
- 在局部内部类中 创建方法 打印所有age
匿名内部类
- 使用匿名内部类来实现接口
2.——Object类 // 思考返回值的类型
题目一 getClass()
- 比较下列的class地址
Student s1 = new Student(25,"李白");
Student s2 = new Student(52,"刘备");
Teacher t2 = new Teacher(33,"诸葛村夫");
题目二 hashCode()
- 输出下列的哈希值
Student s1 = new Student(25,"李白");
Student s2 = new Student(52,"刘备");
Teacher t2 = new Teacher(33,"诸葛村夫");
题目三 toString()
- 使用toString方法 输出
- 重写toString
Student s1 = new Student(25,"李白");
题目四 equals()
- 使用 equals() 方法比较对象地址是否相等
- 重写方法 比较两个对象的内容是否相等
- 比较两个对象地址是否相等
- 确认对象不为null
- 比较类地址
- 强制转换
- 一一对比
Student s1 = new Student(25,"李白");
Student s2 = new Student(52,"刘备");
题目五
- 尝试启动回收器
3. ——包装类
- 拼写八大包装类
- 完成手动(两种装箱)装拆箱以及自动装拆箱
- 八大基本类型和字符串之间相互转换
4.——String类
String content = " 后面是祖国 , 是人民,,,我怎能倒下! "
String content = " 后面是祖国 , 是人民,,,我怎能倒下! ";
// 1. 字符串的长度
System.out.println("字符串的长度; "+content.length());
// 2. 获取字符串中第四个字符
System.out.println("获取字符串中第四个字符; "+content.charAt(5));
// 3. 判断是否包含祖国
System.out.println("判断是否包含祖国; "+content.contains("祖国"));
// 4. 将字符串转换为字符数组
System.out.println("将字符串转换为字符数组; "+);
// 5. 人民在第几个下标下
System.out.println("人民在第几个下标下; "+);
// 6. 第一次的 是 出现在什么下标
System.out.println("第一次的 是 出现在什么下标; "+);
// 7. 最后一次出现是是什么时候
System.out.println("最后一次出现是是什么时候; "+);
// 8. 是否以后面开头
System.out.println("是否以后面开头; "+);
// 9. 是否以意义结尾
System.out.println("是否以意义结尾; "+);
// 10. 修剪前后空格
System.out.println("修剪前后空格; "+);
// 11. 将人民 换成 爱人
System.out.println("将人民 换成 爱人; "+);
// 12. 拆分成 字符数组
System.out.println("拆分成 字符数组; "+);
// 13. 截取从8到13
System.out.println("截取从8到13; "+);
String str = ”Hello YYT!!!“;
String str = ”hello yyt!!!“;
// 1. 大—>小
System.out.println("大—>小; "+);
// 2. 小—>大
System.out.println("小—>大; "+);
// 3. 比较是否一样 区分/不区分 大小写
System.out.println();// false
System.out.println();// true
String str = ”Apple“;
String str = ”RedMi“;
- 比较大小 字典表顺序大小
String str = "this is a text";
String str = "this is a text";
// 1. 第一题 将 str 中的单词单独获取出来
// 2. 将text 替换为practice
// 3. 在text前插入一个 easy
// 4. 将每个单词的首字变成大写
可变字符串
String str = "大白兔";
- 追加”,白又白“;
- 在兔后面插入 ” 真的“
- 将 白又白 替换成 “大奶糖”;
- 删除 “大奶糖”
- 反转该字符串
- 显示长度
5 ——BigDecimal
// 值1; 1.0 值; 0.9
// add
// subtract
// multiply
// divide (保留位数; 2 , 入舍方式; 四舍五入)
6 ——Date
// 1. 获取今天此时此刻 并用两种方式表达 toLocaleString 洛凯le 获取当前系统的毫秒值
// 2. 昨天的此时此刻
// 3. 对比日期...之前 之后
// 4. 比较两个日期的前后
// 5. 比较时间是否相等
// 6. 把时间设置为1970年的初始状态
7 ——Calendar
// 1. getInstance 打印当前时间
// 2. getTimeMillis
// 3. 获取时间信息
// 年
// 月
// 日
// 时
// 分
// 秒
// 4. 将当前月份-1 +1(修改时间)
// 5. 获取最大月份 最小月份
8 ——SimpleDateFormat
// 1. 建立初始化格式
// 2. 日期->字符串 (格式化)
// 3. 字符串->日期 (解析)
9 ——System
// 1. arrayCopy
// 2. currentTimeMillis
// 3. gc
// 4. exit
错题集
1. 局部内部类
//访问局部变量的属性 !!!!
//如果局部方法变量的名称和内部类的一样 会优先调用内部类 所以最好别重名
2. equals
在 equals 方法中不能使用 equals 否则会循环调用会死
instanceOf 判断实例是否是某类下
3. compareTo
用来比较字母在字母典中的顺序
4. 基本类型 包装类 字符串 的转换
4.1 两种手动装箱的方法 手动拆箱
4.2 基本类型<——>字符串
5. String类
将字符串转换为 字符数组 单词 替换 拆分
6. BigDecimal 单词 乘 减 至于舍入计算么 先不做深究 麻烦:)
如果你有梦想 就努力去实现 就这样