day4(继承、修饰符、方法的重写、super关键词、继承中的构造方法、object类、对象转型)

1.类的继承(extends)
通过继承,子类自动拥有父类的所有成员(成员变量和成员发方法)
一个子类只能有一个父类,一个父类可以派生多个子类

2.访问修饰符(private 默认 protected public )
对于class的权限修饰只可以用public和default
default只能被同一个包内部的类访问

3.方法的重写(override)
在子类中可以根据需要对从父类中继承来的方法进行重写
重写方法必须和被重写方法具有相同方法名称、参数列表和返回类型
重写方法不能使用比被重写方法更严格的访问权限

4.super关键词
java类中使用super来引用父类成分

5.继承中的构造方法
5.1在子类的构造的过程中必须调用父类的构造方法
5.2子类可以在自己的构造方法中使用super(argument_list)调用父类的构造方法
如果调用super,必须写在子类构造方法的第一行。
使用this(argument_list)调用本类的另外的构造方法
5.3如果子类的构造方法没有显示的调用父类的构造方法,则系统默认
调用父类无参数的构造方法
5.4如果子类构造方法中既没有显示调用父类构造方法,而父类中又没有无参数的构造方法,则编译会出错。
可以super.()调用父类构造函数 ,里面的参数代表调用哪一个

6.API(应用程序编程接口)

7.Object类
Object类是所有java类的根基类
7.1 重写toString方法
public String toString()
7.2 ==和“equals”的区别
==比较的是两个对象的地址
equals比较的是两个对象的内容

8.对象转型(castring)
一个父类的引用类型变量可以“指向”其子类的对象;
一个父类的引用不可以访问其子类对象新增加的成员;
可以使用引用变量instanceof类名来判断该引用型变量所“指向”的对象是否属于该类或该类的子类;
子类的对象可以当作父类的对象来使用称作向上转型,反之成为吓吓转型。

时间: 2024-10-04 10:12:32

day4(继承、修饰符、方法的重写、super关键词、继承中的构造方法、object类、对象转型)的相关文章

java学习中,面向对象的三大特性:封装、继承、多态 以及 super关键字和方法的重写(java 学习中的小记录)

java学习中,面向对象的三大特性:封装.继承.多态 以及 super关键字和方法的重写(java 学习中的小记录) 作者:王可利(Star·星星) 封装     权限修饰符:public 公共的,private 私有的     封装的步骤:          1.使用private 修饰需要封装的成员变量.          2.提供一个公开的方法设置或者访问私有的属性              设置 通过set方法,命名格式:     set属性名();  属性的首字母要大写 访问 通过ge

odoo9 继承父类的方法和重写父类的方法

在odoo9 中的,要继承父类的方法或重写fulide方法,得先继承基础模块,之后直接继承装饰器就可以了.其中,基础模块是用"Home"代替的. from openerp.addons.web.controllers import main as webmain from openerp.addons.web.controllers.main import Home import re class odoo9login(Home, http.Controller):     @http

Java笔记4-do while循环,break,修饰符,方法的调用

do while循环语法:do{ //循环体}while(条件表达式); 注:它是先执行循环体,后再判断的循环结构. 如:int i = 0;do{ System.out.println("i = "+i); i++;}while(i < 10); ---do while一般用在“交互式”的界面循环中.案例: --------------------------break语句与continue语句break可以用在:1). switch语句中, 表示退出某个case块2). 循环

MFC中CAsyncSocket及其派生类对象跨线程使用方法

存在的现象 在MFC中用多线程方法开发WinSocket通讯程序时,如果你的的是API方式,自然没有以下说的问题.但如果当你使用CAsyncSocket及其派生类(CSocket或是你自己的写的)来开发的话,会发现在不同线程中使用CAsyncSocket及其派生类对象时,会出现程序崩溃.这里所说的跨线程,是指该对象在一个线程中调用Create/Close/Attach/Detach函数,然后在另外一个线程中调用其他成员函数如Receive/ReceiveFrom/Send/SendTo等.下面是

sort方法实际应用详解---javascript中对一个对象数组按照对象某个属性进行排序

转载: 查看原文 在javascript中,对象和数组是两种不同的类型,这和php中的数组概念不同.在javascript中,也有一些精妙的算法,用来对一些对象进行排序.我在面试迅雷的时候,也拿到一道题,当时做题的时候考虑到时间,没有去仔细研究,回来后再读了一些方法,就知道真正的考点在哪里了. 我们现在有一组"学生"对象,包含"名字,年龄"等属性,现在要求一个算法,把这些对象放在一个数组里,可以实现按照年龄对这些对象进行排序. var sdts = [ { name

C# 继承实现父类方法、重写、重载

继承是派生类(子类)去实现(重写<override>.重构<new>)基类(父类)的方法或属性.从而获取在派生类中要实现的功能. 子类调用父类构造方法,在父类中有个实现姓名和年龄的构造方法但是中子类也要实现这样的功能这时子类不用再次去写这个功能只要去调用父类的功能即可. public class Person { private string _name = null; private int _age = 0; public Person(string name, int age

c#基础知识 类的继承 修饰符

子类 父类 单继承 所有类都是 class Stusent :Person{ //student继承person类 } 继承 子类自动从父类那里继承所有的 字段.方法.属性.索引器等成员作为自己的成员 处理继承父类的成员外,子类还可以 添加新的成员 隐藏或修改父类的成员 class A{ public int a: } class B:A{ new public int a; } public公共  private私有 static的字段.方法.属性是属于整改类的,直接通过类型访问

Java修饰符 abstract,static,final 的区别详解

一:static 表示静态,它可以修饰属性,方法和代码块. 1.static修饰属性(类变量),那么这个属性就可以用类名.属性名来访问,也就是使这个属性成为本类的类变量,为本类对象所共有.这个属性就是全类公有.(共有的类变量与对象无关,只和类有关). 类加载的过程,类本身也是保存在文件中(字节码文件保存着类的信息)的,java会通过I/O流把类的文件(字节码文件)读入JVM(java虚拟机),这个过程成为类的加载.JVM(java虚拟机)会通过类路径(CLASSPATH)来找字节码文件. 类变量

四.OC基础--1.文档安装和方法重载,2.self和super&amp;static,3.继承和派生,4.实例变量修饰符 ,5.私有变量&amp;私有方法,6.description方法

四.OC基础--1.文档安装和方法重载, 1. 在线安装 xcode-> 系统偏好设置->DownLoads->Doucument->下载 2. 离线安装 百度xcode文档 3. 方法重载: 是指在一个类中定义多个同名的方法 在OC中没有重载 2.self和super&static, self和super: 1. self理解: 谁调用当前方法, self就代表谁. 比如: 在对象方法中,self代表的是对象, 因为只有对象才可以调用对象方法 在类方法中, self代表的