final 固定的

final  修饰类的时候,只能作为子类继承,不能作为父类。

final 定义变量时,必须给成员变量赋值。------  1.直接赋值  2.构造方法。

final 修饰成员方法时,该方法不允许被重写。重写父类方法后,可以增加final。

final 修饰局部变量 1.基本数据类型 2.引用数据类型   ;定义时可以不赋值,使用时再赋值,但一次赋值终身不变。

public class Son {
private final int a; public Son() {
this.a=0;
} public Son(int a) {
this.a = a;
} public final void eat() {
System.out.println("eat");
}
public void sleep() {
System.out.println("sleep");
}
}

 

public class Gson extends Son{
public final void sleep() { }
}

 

public class Demo01 {
public static void main(String[] args) {
//final 修饰局部变量 1.基本数据类型 2.引用数据类型
//定义时可以不赋值,使用时再赋值,但一次赋值终身不变。 final int a;
a=1;
final Person p=new Person();//p存的是地址
p.setName("小红");
p.setAge(10); }
}

 

static 静态修饰

被静态修饰的成员变量属于这个类。

访问静态成员变量时,使用:类名.成员名 

同一个类中,静态成员只能访问静态成员,但不可以访问非静态成员;非静态成员可以访问静态成员。

静态成员不能使用 this/super 。

main方法为静态方法仅仅为程序执行入口,它不属于任何一个对象,可以定义在任意类中。

  ------------------   多态调用方法中,编译看=左边,父类有,编译成功,父类没有,编译失败

运行,静态方法,运行父类中的静态方法,

运行,非静态方法,运行子类的重写方法。

成员变量,编译运行全是父类。

public static final double b=3.14;//静态常量
public class Student {
private String name;
private int age;
public static String schoolName;//静态修饰:所有对象的共享数据
    public static void eat(){
System.out.println("eat");
}
    public Student() {
super();
} public Student(String name, int age) {
super();
this.name = name;
this.age = age;
} 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 static String getSchoolName() {
return schoolName;
} public static void setSchoolName(String schoolName) {
Student.schoolName = schoolName;
} }

 

public class Demo01 {
public static void main(String[] args) {
Student s1=new Student("邢",20);
Student s2=new Student("刘",18);
Student.schoolName="北京大学";//改一个所有的都变,全部共享
System.out.println(s1.getName()+" "+Student.schoolName);
System.out.println(s2.getName()+" "+Student.schoolName);
     Student.eat();
}
}

java 补充(final、static)的更多相关文章

  1. java 关键字final static native详解

    java 关键字native static final详解 一.final 根据程序上下文环境,Java关键字final有"这是无法改变的"或者"终态的"含义, ...

  2. Java中 final static super this instanceof 关键字用法

    一.final关键字 final可以修饰变量.方法及类: 1.当定义一个final变量时,jvm会将其分配到常量池中,其所修饰的对象只能赋值一次,对基本类型来说是其值不可变,引用类型(包括作为函数形参 ...

  3. java - day008 -final ,static ,访问控制符.

    面向对象   封装         类: 模板         对象: 实例         引用,遥控器         构造方法                新建对象时执行           ...

  4. JAVA 构造器, extends[继承], implements[实现], Interface[接口], reflect[反射], clone[克隆], final, static, abstrac

    记录一下: 构造器[构造函数]: 在java中如果用户编写类的时候没有提供构造函数,那么编译器会自动提供一个默认构造函数.它会把所有的实例字段设置为默认值:所有的数字变量初始化为0;所有的布尔变量设置 ...

  5. Java关键字final、static使用总结(转)

    原文链接:Java关键字final, static一些要点 1. final   final类不能被继承,没有子类,final类中的方法默认是final的 final方法不能被子类的方法复盖,但可以被 ...

  6. Java关键字final、static

    一.final根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.你可能出于两种理解而需要阻止改变:设计或效率. final ...

  7. 【转】Java关键字final、static使用总结

    转自:http://lavasoft.blog.51cto.com/62575/18771/   Java关键字final.static使用总结   一.final        根据程序上下文环境, ...

  8. Java关键字final、static使用总结

    Java关键字final.static使用总结   一.final        根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方 ...

  9. 转!Java关键字final、static使用总结

    Java关键字final.static使用总结   一.final 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.你可 ...

  10. Java关键字final、static使用总结(转)

    Java关键字final.static使用总结   一.final        根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方 ...

随机推荐

  1. node 读取超大Excel 文件,提取数据

    之前是用 node-xlsx 来处理excel文件,主要是读取数据或者根据数据生成excel文件.不过,node-xlsx 似乎无法处理超大的excel(100MB以上),例如: var xlsx = ...

  2. Fiddler抓包工具怎么设置HTTPS抓包

    最近在学习使用 Fiddler 抓包工具时遇到一个问题,Fiddler 默认只对 HTTP 协议进行抓包,如果出现下图提示,则需要进行相应设置才可以抓包HTTPS 具体步骤 ①:Tools-Optio ...

  3. Windbg断点调试.net程序

    程序员都知道,在生产环境中,如果没有系统日志,对问题的分析将非常的困难.即使有日志,有时候也会因为日志记录的不全面,而导致问题不能分析清楚.其实,Windbg里面有Live Debug功能,正好可以借 ...

  4. macrotask与microtask

    在说明宏任务及微任务前总结一下事件循环机制(event loop): 首先判断JS是同步还是异步,同步就进入主线程,异步就进入event table 异步任务在event table中注册函数,当满足 ...

  5. 在Windows10 安装 Linux 子系统

    在工作中我们经常需要在Windows中安装Linux系统来完成一些工作,通常使用VMware.virtualpc,Hyper-V等虚拟化技术来实现,Now,我们有了更便利的方法来实现,这就是Windo ...

  6. Java向MySQL新增记录时间误差问题

    参考文档 https://www.jianshu.com/p/115861aad147 https://blog.csdn.net/ai932820942/article/details/845804 ...

  7. C# foreach循环

    一.简介 foreach循环可以迭代数组或者一个集合对象 二.语法 foreach(数据类型  变量名  in  数组名) {     //语句块: } 循环运行的过程:每一次循环时,从集合中取出一个 ...

  8. 记WinForm中WebBrowser相关的俩个问题

    问题一:如何不让WebBrowser中弹出“安全警告” 当链接https网址时,IE会自动弹出上图中的窗口. 关闭窗口的具体思路如下: 使用WebBrowser加载中/加载完毕后触发的事件处理程序,在 ...

  9. Python - 注释 - 第四天

    注释 确保对模块, 函数, 方法和行内注释使用正确的风格 Python中的注释有单行注释和多行注释: Python中单行注释以 # 开头,例如: # 这是一个注释 print('Hello Pytho ...

  10. Python 查看模块的帮助文档,方法和帮助信息

    参考链接:https://blog.csdn.net/u013810296/article/details/55509284 这里介绍下python自带的查看帮助功能,可以在编程时不中断地迅速找到所需 ...