java 小结1(static ,final,泛型)
static,final。
(1)final:
final:属于“终态”,意思就是不可以改变。可以修饰非抽象类,非抽象类的方法等。反正就是不能够再改变赋值了。
注意:1)fina类不能被继承,所以它没有子类。
2)final不能用于修饰构造方法。
3)final方法可以继承,但是不能够被覆盖
4)final一旦赋值,便不能更改
5)final容器,比如list,容器不能够改变,但是容器里面的内容是可以变化的。
(2)static:
static:表示“静态”,“全局”,可用来修饰变量,方法还可以用来形成static代码块。
被static修饰的的成员或者成员方法是独立于类的,它不依赖于某个实例,是被所有实例所共享的,也就是说,只要这个类被加载,JVM就能根据方法名去运行内存区去寻找它们。
不需要事先创建实例,
就这样认为吧,static修饰后的变量,在内存中只有一份拷贝,所有实例都共享这份拷贝,但是如果是实例变量,那么每次创建一个实例便会多创建一份数据。
static 代码块:
static代码块也叫静态代码块,是在类中独立于类成员的static语句块,可以有多个,位置可以随便放,它不在任何的方法体内,JVM加载类时会执行这些静态的代码块,如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次
private static final String GOOD = "G"; 表示的是说“G”这个字符串在程序中我们可以使用GOOD替换。
泛型: 泛型是避免重复的装箱和拆箱 比如集合List<Strunt> studentList=new ArrayList<Student>();
可以直接往集合里添Student对象
studentList.add(student1);
studentList.add(student2);
...
如果是这样List studentList=new ArrayList();
studentList.add(student1);
studentList.add(student2);
那么想要遍历集合就得
for(Object o:studentList){
Student oo=(Student)o;//这里需要类型转换
}
而上面第一个可以直接
for(Student o:StudentList){
o就代表每一个学生的实体了 不需要类型转换便可得到
java 小结1(static ,final,泛型)的更多相关文章
- java里的static/final含义
java里的static/final含义 static static可以修饰:属性,方法,代码段,内部类(静态内部类或嵌套内部类) static修饰的属性的初始化在编译期(类加载的时候),初始化后能改 ...
- Java 面向对象之static,final,匿名对象,内部类,包,修饰符
01final关键字概念 A: 概述 继承的出现提高了代码的复用性,并方便开发.但随之也有问题,有些类在描述完之后,不想被继承, 或者有些类中的部分方法功能是固定的,不想让子类重写.可是当子类继承了这 ...
- java笔记之static&final&abstract
知识需要不断回顾和重新认识 一:static static类型变量初始值只能被赋值一次,它的整个生命周期是源程序,程序结束前变量都不会被释放. 例如: for(int i = 0; i<10; ...
- Java中static、final、static final的区别(转)+transient
说明:不一定准确,但是最快理解. final: final可以修饰:属性,方法,类,局部变量(方法中的变量) final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变. final ...
- 2017.10.23 Java 面向对象深入学习---final 关键字、static关键字、匿名对象等
今日内容介绍 1.final 关键字 2.static 关键字 3.匿名对象 4.内部类 5.包的声明与访问 6.访问修饰符 7.代码块 第一节课 01(面向对象)final关键字概念.avi 02: ...
- java基础复习:final,static,以及String类
2.final 1)为啥String是final修饰的呢? 自己答: 答案: 主要是为了“效率” 和 “安全性” 的缘故.若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所 ...
- java里的static和final
本节介绍JAVA里static和final的作用和使用方法以及一些需要注意的问题. 一.static static表示"全局"或"静态",用来修饰成员变量和成员 ...
- Java之关键字static和final的使用
static 在Java中声明属性.方法时,可使用关键字static来修饰. 1.static变量 按照是否静态的对类成员变量进行分类可分两种:一种是被static修饰的变量,叫静态变量或 ...
- [ReadingNotes] Search the links, static final in the java
[ReadingNotes] Search the links, static final in the java */--> pre { background-color: #2f4f4f;l ...
随机推荐
- python制作安装包(setup.py)
1.制作setup.py from distutils.core import setup setup(name='Myblog', version='1.0', description='My Bl ...
- 使用Result代替ResultSet作为方法返回值
在开发过程中,我们不能将ResultSet对象作为方法的返回值,因为Connection连接一旦关闭,在此连接上的会话和在会话上的结果集也将会自动关闭,而Result对象则不会发生这种现象,所以在查询 ...
- VM 启动时报错:Failed to lock the file
http://www.cnblogs.com/kristain/articles/2491966.html Reason: Failed to lock the fileGoogle 了一下, 在網路 ...
- CSS3 animation的steps方式过渡
animation默认以ease方式过渡,它会在每个关键帧之间插入补间动画,所以动画效果 是连贯性的.除了ease,linear.cubic-bezier之类的过渡函数都会为其插入补间. 但有些效果不 ...
- 最近在折腾VPS(持续完善)
买的某国内vps. 本机环境 Win7-x64 使用官方英文版的putty,用于远程登录linux主机.WinSCP图形界面管理文件. VPS CentOS 6.2 安装 安全狗(safedog.cn ...
- 1089-Duplicate Removal
描述 The company Al's Chocolate Mangos has a web site where visitors can guess how many chocolate cove ...
- dropdownlist无刷新传值
既然局部刷新,其实没有必要用服务器控件,即便用了服务器控件,也不应该将AutoPostBack="true" ,这将导致页面回发并刷新,因此去掉下拉框的该属性 至于局部改变div的 ...
- 145. Binary Tree Postorder Traversal
题目: Given a binary tree, return the postorder traversal of its nodes' values. For example:Given bina ...
- [置顶] *p++/*++p区别-linux
#include <stdio.h> main() { char * s = "123456"; char * p; p = s; printf( "%c\n ...
- ☀【JS】Code
1 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf- ...