J2SE知识点摘记(六)
1、 static关键字的使用
static 关键字:可以用于修饰属性,也可以用于修饰方法,还可以用于修饰类.
static 修饰属性:无论一个类生成了多少个对象,所有这些对象共同使用唯一一份静态的成员变量;一个对象对该静态成员变量进行了修改,其他对象的该静态成员变量的值也会随之发生变化.如果一个成员变量是static 的,那么我们可以通过 类名 .成员变量名 的方式来使用它 的方式来使用它 (推荐使用这种方式) .
static修饰方法: static 修饰的方法叫做静态. 对于静态方法来说,可以 使用 类名 .方法名的方式来访问.(可以由类名直接调用)
静态方法只能继承,不重写.
不能在静态方法中访问非静态成员变量;
不能在静态方法中使用this关键字.
如果在类中声明一个static类型的属性,则此属性既可以在非static类型的方法中使用,也可以在static类型的方法使用.但若要用static类型的方法调用非static类型的属性,就会出现错误.
2、 一个类可以使用不包含在任何方法体中的静态代码块,当类被载入时,静态代码块被执行,且只执行一次.静态代码块经常用来进行类属性的初始化.例子:static {.........}静态代码块"{......}"只执行一次,且优先于静态方法(或者构造函数??),由此可知:静态代码块可以对静态属性初始化.
3、 final关键字的使用
在java中声明类,属性和方法时,可使用关键字final来来修饰
final标记的类不能被继承.
final标记的方法不能被子类覆写.
final标记的变量(成员变量或局部变量)即为常量,只能赋值一次.
4、 Package
package 包的名称;将下面的类和接口打包.例子: "package demo.java"
import package 名称.类名称.一般是import ..... .*导入全部类.
5、 一般来说 访问控制分4种级别:
公开:public 同类 同包 子类 不同包 都可以访问
默认:只向同包同类放开
私有:private 只有类本身可以访问
保护:protected 向子类以及同一个包中的类放开
6、
异常的处理
try{要检查的程序语句;}
catch(异常类
对象名称){异常放生时的处理语句:}
finally{一定会运行到的程序代码;}
try程序块若是有异常发生,程序的运行便中断,并抛出"异常类所产生的对象".抛出的对象如果属于catch()括号内欲捕获的异常类,catch则会捕捉次异常,然后进到catch的块里继续运行.最后一定会运行finally块里的程序代码.
throw异常类实例对象;
throw则是指抛出的一个具体的异常类型.
抛出异常时,throw关键字所抛出的是异常类的实力对象,因此throw语句必须使用new关键字来产生对象.throws是用来声明一个方法可能抛出的所有异常信息.
通常在一个方法(类)的声明处通过throws声明方法(类)可能抛出的异常信息,而在方法(类)内部通过throw声明一个具体的异常信息.
throws通常不用显示的捕获异常,可由系统自动将所有捕获的异常信息抛给上级方法;
throw则需要用户自己捕获相关的异常,而后在对其进行相关包装,最后在将包装后的异常信息抛.
7、
编写异常类
class
异常名称 extends Exception {......}
Exception构造方法:public Exception(String
message)
J2SE知识点摘记(六)的更多相关文章
- J2SE知识点摘记(二十六)
为了用“集合框架”的额外部分把排序支持添加到 Java 2 SDK,版本 1.2,核心 Java 库作了许多更改.像 String 和 Integer 类如今实现 Comparable 接口以提供自然 ...
- J2SE知识点摘记(十六)
1. IO包中的类层次 ┌BufferedInputStream ├DataInputStream ┌FilterInputStream┼LineNumberInputStream ├ ...
- J2SE知识点摘记-数据库(二)
一. 查询数据 注意sql的内容. 通过ResultSet接口保存全部的查询结果,通过Statement接口中的executeQuery()方法查询.查询之后需要分别取出.通过nex ...
- J2SE知识点摘记(十八)
Java容器类类库的用途是“保存对象”,并将其划分为两个不同的概念: 1) Collection . 一组对立的元素,通常这些元素都服从某种规则.List必须保持元素特定的顺序,而Set 不能有重复 ...
- J2SE知识点摘记(五)
1. 引用数据类型的传递 java用引用代替C++中的指针 fun()方法接收的参数是是Change c1,也就是说说fun()方法接受的是一个对象的引用,所以fun方法中所所做的操作就 ...
- J2SE知识点摘记(四)
1. 抽象类(abstract) 抽象类和抽象方法都必须用abstract关键字来修饰. 抽象类不能被直接实例化,也就是不能直接用new关键字去产生对象. 抽象方法只需声明,而不需实现. ...
- J2SE知识点摘记(三)
1. 在java只允许单继承,而不允许多重继承,也就是说一个子类只能有一个父类.但在java中却允许多层继承. 2. 非内部Class只能被public或者defaul ...
- J2SE知识点摘记(二)
1. 对象的声明 "类名 对象名 = new 类名();"例子:Person P;//先声明一个Person类的对象p p=new Person();//用new关键字实例化 ...
- J2SE知识点摘记(一)
1. 数组的声明时无法指定数组的长度. 2. 一维数组的声明和内存的分配 "数据类型 数组名[]; //声明一维数组 数组名= new 数据类型[ ...
随机推荐
- Fragment之一:Fragment入门
参考自张泽华视频 Fragment是自Android3.0后引入的特性,主要用于在不同的屏幕尺寸中展现不同的内容. Fragment必须被嵌入Activity中使用,总是作为Activity的组成部分 ...
- RMAN之一:快速入门
1.数据导出基础 (1)创建datapump导出文件的目录对象并为相应用户授予权限. 出于安全考虑,不允许oracle用户直接在OS上进行文件的操作,而应通过directory对象指定. SQL> ...
- 学习笔记 css3--选择器&新增颜色模式&文本相关
Css3 选择器 --属性选择器 E[attr]只使用属性名,但没有确定任何属性值,E[attr="value"]指定属性名,并指定了该属性的属性值E[attr~="va ...
- 英特尔发布全新英特尔® INDE 2015工具套件
2014年10月15日,英特尔发布了全新的英特尔® Integrated Native Developer Experience 2015工具套件(简称英特尔® INDE).该产品提供了一系列最佳工具 ...
- paul的cnblog,欢迎大家的光临
我会在blog里面分享各种资源,技术文章,大家多多交流,欢迎拍砖.
- Git for PyCharm
Git for PyCharm Using PyCharm's Git integration locally:http://confluence.jetbrains.com/display/PYH/ ...
- 利用VisualVM监测Azure云服务中的Java应用
在做Java开发的时候,我们需要在上线之前对程序进行压力测试,对程序的性能进行全面的监控,了解JVM的CPU,内存,GC,classes,线程等等信息,或者在程序上线运行的过程当中以便于诊断问题或者对 ...
- chart
var pieChart = { width: 600, height: 400, series: [], unit: "kg", chartCanvas: null, selec ...
- thinkphp这样玩关联查询(实例教会你)
thinkphp实例,内连接实现多表中同时查找,并存在了一个数组中,返回到模板中,模板中volist遍历即可使用多表中的字段 $row=M()->query("select realn ...
- linux swap 分区调控(swap分区 lvm管理)
注:linux swap分区 采用lvm管理,调控可以采用下面的方法 一.查看 swap lv [root@testdb ~]# vgdisplay -v Finding all volume ...