#20175120彭宇辰 java第四周总结
教材学习内容总结
-第五章 子类与继承
子类的定义
-class 子类名 extends 父类名
ps:
-任何类都是object的子类
-每个类有且仅有一个父类,多个或0个子类
同一包里的继承性
-除了private,其他友好类、public类、protected类都被子类继承
不同包里的继承性
-子类只继承public和protected类
protected的说明
-对于子类D自己声明的protected,只要其他类和D在同一个包中,其他类中用D创建的对象就能访问这些protected
-对于子类继承的protected,只要其他类和D的祖先类在一个包中,其他类就能访问protected
instanceof运算符
-左边是对象,右边是类
-左边的对象是右边的类或其子类创建时,instanceof运算结果是true
成员变量的隐藏
-子类对象和自己定义的方法与父类的同名,则父类的内容被隐藏
-子类对象依然可以用从父类继承的方法调用被隐藏的成员变量
方法重写
-继承父类
-方法类型一致或为父类方法子类型
-方法名字、参数个数、参数类型与父类一致
-重写方法时,不能降低方法的访问权限
super关键字
-调用被隐藏的方法c=super.f()
-必须是子类构造方法中的第一条
-子类中默认有super();
final关键字
-修饰类、成员变量、方法中的局部变量
-修饰成员变量,不能有子类
-修饰局部变量,不允许子类重写
abstract关键字
-修饰类、方法
-不能与final同时修饰方法和类
-不能与static同时修饰方法
-抽象类中可以有抽象类方法
-不能用new创建对象
-子类必须重写abstract方法,同时去掉abstract修饰
-abstract类的对象作为上转型对象,调用子类重写的方法
对象的上转型对象
-用法
Animal是Tiger的父类
Animal a;
a=new Tiger();
-教材P126的图5.9!
ps:
-区分父类创建的对象和子类对象的上转型对象
-可以将上转型对象强制转换回子类对象
-不能将父类创建的对象引用赋给子类对象
教材学习中的问题和解决过程
问题1:编译Example5_6时,Example5_6.java使用或覆盖了已过时的 API。
解决方法:源代码中,使用JDK中的类的时候,调用了已经过时的方法。所谓过时方法,是有些没有真正实现的方法,或存在潜在问题的方法。这些方法一般情况下,目前的JDK还支持,但在未来的某个版本中,可能就会取消的。所以,在本地使用的代码不必担心这个问题;要移值到其它计算机的程序必须要解决这个问题。
代码托管:https://gitee.com/pyc-1751/chapter_1_of_java.git
代码量截图:(https://images.gitee.com/uploads/images/2019/0324/211946_4ff43866_4787449.png "微信截图_20190324211431.png")
上周考试错题总结
下列说法正确的是
A .如果想在方法中使用被隐藏的成员变量,可以使用关键字super。
B .double类型的成员变量的默认值为0,局部变量没有默认值。
C .对成员变量的赋值操作只能放在方法中。
D .面向对象语言中的“类”相当于C语言中的“函数”。
-我误选了B,答案为C
-double型变量的默认值为0.0
下列关于实例方法和类方法的叙述,正确的是
A .类方法不可以操作实例变量,因为在类创建对象之前,实例成员变量还没有分配内存。
B .当创建第一个对象时,类中的实例方法就分配了入口地址,当再创建对象时,不再分配入口地址。
C .实例方法不能通过类名调用,只能由对象来调用。
D .不必创建对象就可以用类名直接调用static方法。
-答案是ABCD,我漏选C
-实例方法可以通过实例变量和类变量来调用
-类方法只能由类变量调用
下列A类中【代码1】~【代码5】哪些是错误的?
class Tom {
private int x = 120;
protected int y = 20;
int z = 11;
private void f() {
x = 200;
System.out.println(x);
}
void g() {
x = 200;
System.out.println(x);
}
}
public class A {
public static void main(String args[]) {
Tom tom = new Tom();
tom.x = 22; //【代码1】
tom.y = 33; //【代码2】
tom.z = 55; //【代码3】
tom.f(); //【代码4】
tom.g(); //【代码5】
}
}
A .【代码1】
B .【代码2】
C .【代码3】
D .【代码4】
E .【代码5】
-答案是AD
-private修饰的对象和方法不能被调用
#20175120彭宇辰 java第四周总结的更多相关文章
- #20175120彭宇辰 java第五周学习总结
第六章 接口与实现 教材学习内容总结 接口-接口声名interace -接口体1.只有常量声明和抽象方法2.所有常量和方法的访问权限都为public3.常量都为static常量4.可省略pulic\s ...
- 20175120彭宇辰 《Java程序设计》第九周学习总结
教材内容总结 一.mysql数据库管理系统(windows) 1.官网下载安装解压mysql社区版 2.启动mysql 用cmd进入mysql解压包,输入 mysqld --initialize-in ...
- 20175120彭宇辰 《Java程序设计》第八周学习总结
教材学习内容总结 第十五章 泛型与集合框架 一.泛型 泛型的主要目的是可以建立具有类型安全的集合框架,如链表.散列映射等数据结构. 1.泛型类声明 class People<E> Peop ...
- 20175120彭宇辰 《Java程序设计》第七周学习总结
#教材内容总结 第八章 常用实用类 一.String类 String类用来处理字符序列,在java.lang包中,程序可以直接使用String类.需要注意的是Java把String类声明为final类 ...
- 20175120彭宇辰 《Java程序设计》第六周学习总结
教材学习内容总结 第七章 一.内部类与外部类的关系 1.内部类可以使用外嵌类的成员变量和方法.2.类体中不可以声明类变量和类方法,外部类可以用内部类声明对象.3.内部类仅供外嵌类使用.4.类声明可以使 ...
- #20175120彭宇辰-实验一《Java开发环境的熟悉》实验报告
Java开发环境的熟悉-1 实验要求:1 .建立“自己学号exp1”的目录2 .在“自己学号exp1”目录下建立src,bin等目录3 .javac,java的执行在“自己学号exp1”目录4 .提交 ...
- 20175120彭宇辰 《Java程序设计》第十一周学习总结
教材内容总结 第十三章 Java网络编程 一.URL类 一个URL对象包含的三个基本信息:协议.地址和资源. -协议:必须是URL对象所在的Java虚拟机支持的协议,常用的有:Http.Ftp.Fil ...
- 20175120彭宇辰 《Java程序设计》第十周学习总结
教材内容总结 十二章 Java多线程机制 一.进程与线程.操作系统与进程 -线程不是进程,是比进程更小的执行单位.但与进程不同的是,线程的中断和恢复可以更加节省系统的开销. -线程可以共享进程中的某些 ...
- 20145304 Java第四周学习报告
20145304<Java程序设计>第四周学习总结 教材学习内容总结 1.继承共同行为: 继承基本上就是避免多个类间重复定义共同行为,关键词为extends. 代码如下: //继承共同行为 ...
随机推荐
- FSMC_LCD
1. TFT-LCD(Thin Film Transistor Liquid Crystal Display)[薄膜晶体管液晶显示器] 2. 液晶 物质在熔融状态或在溶液状态下虽然获得了液体物质的流动 ...
- HAOI(多省联考)2019退役记
等着回头写 算了今天先写点 Day -1 打扫下机房,不想写题,不想考试.... Day 0 上午颓了一上午 下午看下考场结果去早了 ZYZ 全员进队! Day 1 上来T1,01Tire!,开码,半 ...
- Lintcode40-Implement Queue by Two Stacks-Medium
40. Implement Queue by Two Stacks As the title described, you should only use two stacks to implemen ...
- ssm+redis整合(通过cache方式)
这几天的研究ssm redis 终于进入主题了,今天参考了网上一些文章搭建了一下ssm+redis整合,特别记录下来以便以后可以查询使用,有什么不足请大牛们提点 项目架构 1.pom.xml < ...
- python requests用法总结
requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到.可以说,Requests 完全满足如今网络的需求 本文全部来源于官方文档 http://docs ...
- Axure 交互样式和选项组的设置
1.点击元件,点击属性,点击选中,点击图片,选择相应的图片,选中功能是当点击这个元件的时候,元件的变成相应的图片,然后再设置鼠标单击时的动作是选中,就可以实现选中某个元件的时候,元件会变成其他的图片. ...
- Mysql5.7出现this is incompatible with sql_mode=only_full_group_by
vi /etc/my.cnf #编辑mysql配置文件 在 [mysqld]和[mysql]下添加 sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZE ...
- 周鸿祎IOT发布会思考
周鸿祎的IOT发布会提出了一个新的东西,就是一个智能家居的应用场景,但是与传统的智能家居的应用场景不同,周鸿祎的智能家居概念添加了一个关键的边缘计算节点,这个节点置于家庭端,旨在提高家庭端的计算能力, ...
- MVC实战之排球计分(八)——软件制作总结
此系列博客目的是制作一款排球计分程序.这系列博客将讲述此软件的 各个功能的设计与实现.到这篇博客,此系列博客就算是结束了. 在最后的这篇博客里 我们来做一些总结. 一,制作此程序,我们使用的是MVC框 ...
- js如何在浏览器添加cookie(添加、获取、删除)
首先,简单用js将cookie保存到浏览器中,具体可按F12在这里查看(火狐浏览器) 1.js脚本方法 1)添加cookie方法 //添加cookie var addCookie = function ...