java 从零开始,学习笔记之基础入门<Static>(十二)
2013-11-08 09:35
726 查看
Static 关键字
表示是静态的,它可以用来修饰属性,修饰方法,修饰类
如果一个类中属性用static修饰,那么此属性属于静态属性
如果一个类中方法用static修饰,那么此方法属于静态方法
如果一个类中,内部类用static修饰,那么此内部类属于静态内部类
如果属性或者方法被static关键字修饰,那么我可以直接通过“类名.静态属性名 或者 类名.静态方法名”来调用
Static关键字不能修饰构造器
静态块,静态方法,自由块,普通方法执行顺序
先静态块,然后在执行main方法,创建对象时执行自由块,然后在按照main方法执行程序
Final关键字
Final关键字表最终的,可以修饰属性,可以修饰方法,可以修饰类
Final修饰属性,属性初始化值之后,属性的值不再改变;如果属性没有初始化值,那么只能改变属性的值,不能改变属性的对象。
Final修饰方法,则表示此方法为最终方法,此方法不可以被覆盖。
Final修饰类,则表示此类为最终类,此类不可以被继承
当用final修饰属性的时候,属性需要实例化
当用final修饰属性的时候,属性为一常量,常量的命名一般的情况下都为大写
.
用final修饰方法:访问修饰符+final+返回值类型+方法名(参数列表){}
用final修饰方法不能被子类覆盖
用final修饰类:访问修饰符+fianl+class+类名{}
用final修饰的类不能被其他类继承
表示是静态的,它可以用来修饰属性,修饰方法,修饰类
如果一个类中属性用static修饰,那么此属性属于静态属性
如果一个类中方法用static修饰,那么此方法属于静态方法
如果一个类中,内部类用static修饰,那么此内部类属于静态内部类
如果属性或者方法被static关键字修饰,那么我可以直接通过“类名.静态属性名 或者 类名.静态方法名”来调用
Static关键字不能修饰构造器
package com.ibm.jbs.height; public class StaticDemo { //声明一个静态的属性 //语法格式:访问修饰符+static+类型+属性名=【值】; privatestatic inti; privatestatic Stringname ="admin"; public static Stringage; public Stringpass; //声明一个静态方法 //语法格式:访问修饰符+static+返回值类型+方法名(参数列表){} publicstatic void show(){ } publicstatic String show1(){ returnnull; } public String show2(){ returnnull; } // public static StaticDemo(){ // //static不能修饰构造器 // } |
静态块,静态方法,自由块,普通方法执行顺序
先静态块,然后在执行main方法,创建对象时执行自由块,然后在按照main方法执行程序
package com.ibm.jbs.height; public class StaticDemo02 { public staticinti; publicstatic Stringname; static { i=10; name ="admin"; System.out.println("静态块执行完成"); } { System.out.println(i); System.out.println(name); System.out.println("自由块执行完成"); } publicstatic void show(){ System.out.println(i); System.out.println(name); System.out.println("静态方法执行完"); } public void show2(){ System.out.println(i); System.out.println(name); System.out.println("普通方法执行完成"); } publicstatic void main(String[] args) { show(); new StaticDemo02().show2(); } } |
执行结果: 静态块执行完成 10 admin 静态方法执行完 10 admin 自由块执行完成 10 admin 普通方法执行完成 |
Final关键字
Final关键字表最终的,可以修饰属性,可以修饰方法,可以修饰类
Final修饰属性,属性初始化值之后,属性的值不再改变;如果属性没有初始化值,那么只能改变属性的值,不能改变属性的对象。
Final修饰方法,则表示此方法为最终方法,此方法不可以被覆盖。
Final修饰类,则表示此类为最终类,此类不可以被继承
当用final修饰属性的时候,属性需要实例化
当用final修饰属性的时候,属性为一常量,常量的命名一般的情况下都为大写
public class FinalDemo { //转大写:ctr1+shift+x //转小写:ctrl+shif+y publicfinal StringNAME=""; public static final StringPASS=""; //final修饰的属性不能被改变值 publicstatic void main(String[] args){ //PASS="AA"; } } |
.
用final修饰方法:访问修饰符+final+返回值类型+方法名(参数列表){}
public final void show(){ } |
用final修饰类:访问修饰符+fianl+class+类名{}
Public final class FinalDemo { } |
相关文章推荐
- java 从零开始,学习笔记之基础入门<jsp>(二十六)
- java 从零开始,学习笔记之基础入门<Struts2_实战演练(上)>(三十八)
- java 从零开始,学习笔记之基础入门<对象_属性>(二)
- java 从零开始,学习笔记之基础入门<servlet_文件下载>(二十七)
- java 从零开始,学习笔记之基础入门<正则表达式>(三十一)
- java 从零开始,学习笔记之基础入门<javascript>(三十)
- java 从零开始,学习笔记之基础入门<集合>(十六)
- java 从零开始,学习笔记之基础入门<反射>(二十九)
- java 从零开始,学习笔记之基础入门<数据类型的转换>(五)
- java 从零开始,学习笔记之基础入门<数组>(七)
- java 从零开始,学习笔记之基础入门<Date类_Calendar类>(十七)
- java 从零开始,学习笔记之基础入门<重载_覆盖_继承>(十)
- java 从零开始,学习笔记之基础入门<IO流>(十八)
- java 从零开始,学习笔记之基础入门<线程及实例分析>(十九)
- java 从零开始,学习笔记之基础入门<tomcat>(二十五)
- java 从零开始,学习笔记之基础入门<集合>(十六)
- java 从零开始,学习笔记之基础入门<运算符表达式和流程控制>(六)
- java 从零开始,学习笔记之基础入门<Jquery>(四十三)
- java 从零开始,学习笔记之基础入门<SQL_Server_常用查询>(二十二)
- java 从零开始,学习笔记之基础入门<Hibernate_实战演练>(三十七)