this关键字,static以及子类访问父类super关键字
1.this是用来指代当前类实例化对象
public setid(id){thiis.id = id;}
即将传入的形参id赋值给当前类的id属性
2.this还可以调用方法,方法分为两种构造方法和普通方法
构造方法中可以通过this调用普通方法,但是普通方法不能调用构造方法
3.无参构造方法中可以通过this调用有参构造方法
有参构造方法中也可以通过this调用无参构造方法
但两者不能同时调用
4.两种构造方法都不能它通过this调用自己
5.static:表示静态或全局,可以用修饰成员变量或成员方法,代码块
6.如果没有学习对象之后的知识,如果要调用主方法外的方法,变量,name需要将这些方法或变量声明为static
7.当一个对象被声明为static时,此时它是共有的,如果在主方法中对他进行操作,它会不断改变
但当在主方法中声明一个变量时,当它不断自增时,其实相当于创建了十个它
例如Student student = new Student();左边的student属于栈内存储存右边student的堆内存的地址
8.static代码块,只会被执行一次,什么时候执行呢?
当这个static代码块所在的类被加载时执行
9.如果判别子类创建对象时无参构造创建还是有参构造创建,通过右侧里面的括号里面是否有参数判定
10.(重点)当子类创建一个对象时,会默认先通过无参构造创建一个父类对象
11.(重点)无论是无参构造或者有参构造创建子类对象时,都会先默认通过无参构造创建父类对象
除非手动修改子类的无参构造方法添加super();此时的无参构造创建父类对象在于super方法中括号里面是否有参数
12.super关键字:用于子类访问父类的成员变量、普通方法,构造方法
在子类的构造方法中可以通过super关键字访问父类的构造方法和普通方法
在子类中普通方法只能访问父类的普通方法
13.public test(){
Student student = new Student(1);
student.show();}
考点1;每个子类对象被创建,都会先创建父类对象
考点2.通过子类调用父类方法
14.修饰符分为public、protected、默认、private
在不同的修饰符的作用域不同
同一类中四个修饰符都能访问
同一包中其他的类除咯private不能访问其余的都可以访问
不同包中只有public可以访问
子类(同一包)除咯private不能访问,其余都能访问
子类(不同包)只有public可以访问
this关键字,static以及子类访问父类super关键字的更多相关文章
- javascript中uber实现子类访问父类成员
function Animal(){} Animal.prototype={ name:"animal", toString:function(){ console.log(thi ...
- 转:C++:从子类访问父类的私有函数
众所周知,c和c++的数组都是不安全的,因为无论c还是c++都不提供数组边界检查功能,这使得数组溢出成为可能.从某个意义上说,c和c++是一种缺少监督的语言,然而这也正是其魅力所在.c++给予程序员更 ...
- Java子类访问父类的私有成员变量
/**子类会继承父类所有的属性和方法. * 但是根据不同的权限标识符,子类不可见父类的私有变量,但可以通过父类的公共方法访问私有变量 * 所以对于重名变量,子类和父类都各有一份. * 对于子类和父类中 ...
- 子类覆写的变量被private隐藏,强制转换方式通过子类访问父类的被覆写变量:
import static java.lang.System.*; public class SuperParent{ public static void main(String[] args){ ...
- 【C++】子类访问父类typedef的问题
class A { public: typedef int* pointer; }; class B :public A { public: pointer b; }; 这段代码运行没有问题,子类继承 ...
- final,static,this,super 关键字总结
一.final 关键字 final关键字主要用在三个地方:变量.方法.类. 1.对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改:如果是引用类型的变量,则在对其初始 ...
- 继承进一步使用,以及super关键字
目标: 1)掌握子类对象实例化过程 2)掌握方法覆盖概念和实现. 3)掌握super关键字的作用. 一,子类对象实例化过程 子类对象在实例化之前,必须先调用父类中的构造方法,再调用子类中的构造方法. ...
- OC 继承子类对象调用方法机制 子类对象访问父类中的实例变量
在继承中,子类对象如何调用到正确方法的机制 每一个Objective - C对象都有一个隐藏的指针指向类的代码,当向一个对象发送消息的时候,当前的对象会首先在当前类里去查找相应的方法,如果找到的话,直 ...
- 成员变量的隐藏,方法的覆盖,super关键字
成员变量的隐藏:当父类和子类有相同的成员变量时,即定义了与父类相同的成员变量时,就会发生子类对父类变量的隐藏.对于子类的对象来说,父类中的同名成员变量被隐藏起来,子类就会优先使用自己的成员变量,父类成 ...
- JAVA继承时this和super关键字
JAVA继承时this和super关键字 本文主要讨论在方法前使用this或super关键字时,编译器在什么地方查找对应的函数. 在子类中指定this关键字.首先在本类中查找,如果本类中找不到,再在父 ...
随机推荐
- python 添加文件模板,默认添加作者时间等必要信息
1.模板设置 配置路径:Setting-Editor-File and Code Templates-Python-Script 2.示例输入 代码如下(示例): #!/usr/bin/env pyt ...
- OSIDP-并发:互斥和同步-05
进程和线程的管理 多道程序设计:管理单处理器系统中的多个进程. 多处理器技术:管理多处理器系统中的多个进程. 分布式处理器技术:管理分布式环境下的多个进程. 并发出现的三种环境 多应用程序:多个运行中 ...
- 【转】Thunderbird 设置转移
此文章可能已经过时. 此文章的原文版本已经做出了重大更动.在此页面更新前,您可能也会觉得这个有用:Profiles - Where Thunderbird stores your messages a ...
- nodejs 连接MSSQL数据库 Setting the TLS ServerName to an IP address is not permitted by RFC 6066. This will be ignored in a future version
初学nodejs连接lmssql数据库,测试报错,查了很多资料,最后发现报这个错主要是mssql不支持https安全连接,如果不考虑这个,仅做测试连接,就很容易,直接改个参数就可以了: const s ...
- [C#]接口Interface快速Demo
参考代码1: using System; namespace InterfaceDemo { /// <summary> /// 定义一个爬树接口 /// </summary> ...
- conda Installing on Linux - 搬运
转自:Installing on Linux - conda 23.1.0 documentation Installing on Linux Download the installer: Min ...
- Old ST-LINK firmware detected.do you want to upgrade it?升级固件
一段时间没有使用st-link烧写程序了.打开keil5准备把程序烧写到stm32板子上时,报错Old ST-LINK firmware detected.do you want to upgrade ...
- 05-Spring的AOP编程之基于注解开发
Spring的AOP基于注解的开发 首先在AOP配置文件中,开启注解的aop开发 <aop:aspectj-autoproxy></aop:aspectj-autoproxy> ...
- (2)请用requests库的get()函数访问如下一个网站20次,打印返回状态,text()内容,计算text()属性和content属性所返回网页内容的长度。
# 导入库 import requests from bs4 import BeautifulSoup def getUrlText(url): try: web = requests.get(url ...
- luffy项目settings
一: 二:. 设置调整 1.修改manage.py配置路径 os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'luffyApi.settings.de ...