java EE 学习笔记 3

JAVA EE

 

1、类型判断运算符 : instanceof    如 if(n instanceof Bage)

 

2、内部类(寄生类)、外部类                 (注:外部类不能加static,内部类可以)

编译时期 从JAVA编译成class字节码文件会生成两个独立的class文件

创建对象:  

new wai();

在外部类中不能直接调用内部类的方法,在内部类中可以直接调用外部类的方法

要调用内部类 : wai.nei n = new wai().new nei()

实例化内部类的两种方法:

  ---法一:

  Outer.Inner in=new Outer().new Inner();

  ---法二:

  Outer o=new Outer();

  Outer.Inner I=o.new Inner();

  如果内部类是static的,也可以用下面方法:

  Outer.Inner in=new Outer.Inner();

 

匿名内部类、匿名子类对象:

匿名内部类不能有构造方法。 

匿名内部类不能定义任何静态成员、方法和类。 

匿名内部类不能是public,protected,private,static。 

只能创建匿名内部类的一个实例。

 

3、构造器加private修饰,则不能创建对象

 

4、final修饰引用类型不用初始化,引用类型变量就只能指向一个对象。

 

5、异常处理

出现异常状态之后,程序会中断运行

运行时异常

非运行时异常

 

两种办法:

1.用 try{异常}catch(Exception ){发生异常后执行的语句} 来捕捉异常        (调试使用)                          (try/catch)

Exception 是所有异常的顶级父类    

finally 必须执行的代码 ,如果try里和finally里都有return,finally中的结果将覆盖try中的结果

 

2.或用 throw 抛出去,抛到所属类,由此类来处理 ( add throw )

 

错误:error

 

6、Math类(数学类)

 

7、String类

创建的字符串存在 字符串常量池 中

例:String str = new String("hello")    该语句创建了两个字符串对象!

不用 == 来比较,用 .equals 来比较  (equals在类中已经重载)

 

字符串搜索(注返回的是下标,错误返回-1)

字符串切割

字符串链接

字符串替换

字符串去前后空格

//System.out.println("index of l = " + s.indexOf('p'));从0下标开始查找字符,返回下标数,没找到返回-1

//System.out.println("last index of l = " + s.lastIndexOf('l'));

//System.out.println("index of('o', 3) = " + s.indexOf('o', 5));从指定的位置开始寻找

//System.out.println(s.substring(0, 5));  返回新字符串对象包含头不包含尾

//System.out.println(s.concat(s1));

//System.out.println(s.replace(' ', ','));//替换指定字符 返回新字符串对象

//System.out.println(s.trim());  去掉前后空格,中间不可以去掉

 

8、可变字符串序列     (在字符串频繁变化时使用)

StringBuffer(线程安全)       StringBuilder(非线程安全,但是速度快)

 

9、Collections (集合) API

如: Hashset      和      Arrivelist

1.set<范形>(无序、不可重复的)(迭代器:iterator)          ;        

 

2.list(有序、可重复的)

 

3.<特殊集合>

Map<范形>  是以(key,value)的形式看来存储数(键值对),   key不可重复 , value可重复

(Map中没有迭代器,用keySet,获取所有key返回set集合,就可以使用迭代器了,然后通过get(key)来循环获取value值)

 

 

10、新的for循环(局限:不能赋值)

如: int a  [] = {1,2,4,56,2};

for (int i : a ) {

System.out.println(i);

}

 

11、线程、进程

进程:是正在运行的程序

 

线程:是进程中的最小执行单元,执行路径,执行场景

用Thread.start()开启线程,   重载的run{}就是线程的线程体

一个线程只能开启一次

 

implements (runnable接口)       (thread也是该接口中的类,相当于直接使用此接口)

 

synchronized(mutex)  同步锁

{

//同步代码块

}

 

两种方法:

      · 1.一个线程使用一个线程体

2.多个线程共用一个线程体

 

12、多个程序同时执行  (利用线程的匿名子类对象)

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值