本篇主要总结JAVA中的super、this、final、static、break、continue

1、super

super主要用在继承当中,表示调用父类的构造函数。

1.如果要在子类方法中调用父类被覆盖的实例方法,则可以使用super限定来调用父类被覆盖的实例方法

  

class B {
public B() { } public void C() {
System.out.println("B中的C");
}
} public class A extends B {
public void C() {
System.out.println("A中的C");
} public void D() {
super.C();
} public static void main(String[] args) {
A a = new A();
a.D();
}
} 输出结果是:B中的C

  

  2.如果在构造器中使用super,则super用于限定该构造器初始化的是该对象从父类继承得到的实例变量,而不是该类自己的实例变量

  3.如果父类定义了无参的构造方法,那么子类可以随便定义构造方法,系统会自动在构造方法的第一行隐式添加一个super()来调用父类的无参构造方法

class B {
public B() {
System.out.println("父类的构造方法");
}
} public class A extends B {
public A() {
//super(); 这里隐式添加了一个super()
System.out.println("子类的构造方法");
} public static void main(String[] args) {
A a = new A();
}
}
输出结果为:父类的构造方法
子类的构造方法

  如果父类没有定义无参构造方法,那么子类只可以定义和父类构造方法的参数列表相同个数的子类构造方法,然后在构造方法中显式调用父类的super(参数...)

  如果父类同时定义了有参的和无参的构造方法,那么子类可以随便定义构造方法,并且子类构造方法的第一行可以随便使用加或者不加参数的super()来调用父类的构造方法

2、this关键字

在JAVA中,this关键字指向调用该方法的对象。有以下作用

1.调用当前类的属性和方法

2.调用构造方法

public class People {
private String name;
private int age; public People(String name, int age) {
this();
this.name = name;
this.age = age; } public People() {
System.out.println("无参构造方法");
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public int getAge() {
return age;
} public void setAge(int age) {
this.age = age;
} public void say() {
System.out.println(getName() + "-----" + getAge());
} public static void main(String[] args) {
People p = new People("王菲", 50);
p.say();
} }

3、final关键字

  1.final在JAVA中被称为完结器,表示最终的意思

  2.final能声明类、方法和属性:

使用final声明的类不能被继承(类似于古代的太监,哈哈)

使用final声明的方法不能被重写

使用final声明的变量变成常量,不能被修改

4、static关键字

static在JAVA中表示静态的,用来修饰方法、成员变量、代码块、内部类等(外部类不能使用static)

1.使用static声明的属性被成为全局属性

2.使用static声明的方法成为静态方法,可以使用类名直接调用

3.  静态成员不能直接访问非静态成员,即使是静态内部类,也不可以访问外部类  的非静态对象

于是我们可以将类级别的变量声明为static。静态变量是属于类的,而不是属于类创建的对象或实例。static经常与final一起使用来修饰一个可供所有对象共同使用的常量资源。

5、break关键字

break经常被用在循环中,用来结束循环,当触发某个条件后,执行break,程序不再管循环是否执行完毕,直接跳出循环,执行循环下面的代码

break完全终止循环

6、continue关键字

continue被用于跳出循环,当满足某个条件后,跳出当前循环,执行下一个循环。

continue只是跳出本次循环,不会终止

JAVA笔记整理(七),JAVA几个关键字的更多相关文章

  1. 菜鸡的Java笔记 第七 - java 数组

    数组的基本概念     笔试中经常出现的试题或是问题    1.1 概念        数组指的是一组相关变量的集合         如果用最原始的方式定义100个变量的话没问题但是这些变量的关联实在 ...

  2. java笔记整理

    Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...

  3. java 笔记整理

    在19寒假对java基础进行自学,总结的笔记整理出来 ==================================================== 排序查找 冒泡排序法1.一共会比较数组元 ...

  4. JAVA笔记整理(四),JAVA中的封装

    什么是封装 所谓的封装就是把数据项和方法作为一个独立的整体隐藏在对象的内部,具体的实施细节不对外提现,仅仅保留有限的外部接口,封装外的用户只能通过接口来进行操作.就好比开启一台电脑需要进行很多个步骤, ...

  5. Java笔记(七)

    File类: import java.io.File; import java.io.IOException; public class Demo{ public static void main(S ...

  6. JAVA笔记整理(一),JAVA介绍

    JAVA语言的版本: J2SE(Java2 Platform Standard Edition,java平台标准版),后更名为:JAVA SE J2EE(Java 2 Platform,Enterpr ...

  7. 【Java笔记】配置文件java.util.Properties类的使用

    配置文件的路径:项目名/src/main/resources/mmall.properties mmall.properties的内容是键值对.例如假设写了ftp服务器的一些信息. ftp.serve ...

  8. Java笔记12:Java对象排序

    代码: import java.util.Arrays; import java.util.Comparator; class Person { private String name; privat ...

  9. Java笔记整理列表

    整理Java相关知识点. 2018-11-20 1:Java入门学习 2:Java进阶

随机推荐

  1. Win10安装Golang

    首先去这个网站下载Golang的安装包:https://studygolang.com/dl 因为我的系统是Win10专业版64位,所以我选择了对应的Windows的安装包进行下载: 下载好安装包之后 ...

  2. 【WAP触屏】YouKu视频弹窗播放组件

    (function(window){ /* youku api : http://open.youku.com/tools 调用方法 : LM_youkuPop.open('XODI5Mzk3MDAw ...

  3. 代码内存泄露检测(1) MLeaksFinder (Wechat开源) + FBRetainCycleDetector (FaceBook开源)

    每次项目编译完成之后,都被内存搞得头昏脑胀,压力甚大. 利用两周时间,稍微研究了 微信开源的 MLeaksFinder 和 facebook 开源的 FBMemoryProfiler, 这两个开源三方 ...

  4. Juniper总结

    Juniper的路由器分为两个部分——RE和PFE.不过貌似大部分路由器都分为这两个部分.... Routing Engine: 当密码授权通过之后,用户就进入了RoutingEngine中,在其中可 ...

  5. jira7.3.6 linux安装及破解

    一.环境准备 jira7.3的运行是依赖java环境的,也就是说需要安装jdk并且要是1.8以上版本,如下: http://www.oracle.com/technetwork/java/javase ...

  6. qt qml 类型之Keys

    Keys 类是 Qt Quick 提供的,专门供 Item 处理按键事件的类.它定义了很多针对特定按键的信号,比如 onReturnPressed / onEscapePressed / onDown ...

  7. todo---git 生成密钥 原理分析

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDRJkDZ2z7syFC2QDCaORKF41ecwbL/kyFwkycOVE3MavTRBliAhoAhOaZQTr4j ...

  8. CSS样式三种形式

    CSS基本表现形式只有三种:标签样式.Class类样式.ID样式 标签样式: 必须与HTML标签同名.仅仅影响同名标签 Class样式:可以在任何标签中使用: class="样式名" ...

  9. 利用strace & Perf分析MySQL

    strace介绍及用途 strace是一个用于诊断,分析linux用户态进程的工具 类似的工具pstrace,lsof,gdb,pstrack strace观察mysqld对my.cnf 配置文件的加 ...

  10. python中zipfile模块实例化解析

    文章内容由--“脚本之家“--提供,在此感谢脚本之家的贡献,该网站网址为:https://www.jb51.net/ 简介: zipfile是python里用来做zip格式编码的压缩和解压缩的,由于是 ...