您的位置:首页 > 编程语言 > Java开发

7-28 java 学习笔记

2017-07-28 16:51 197 查看
接口

1.接口的定义



举例:


(其中abstrack可不写)接口中不能有方法体

2.实现接口



举例:



3.接口的使用

语法格式:



举例:



多态的应用:

用父类数组存储多个子类对象

父类[] 引用名={new 子类1(),new子类2()……new 子类n()}



处理异常

return在try-catch-finally中:

1、不管有木有出现异常,finally块中代码都会执行;

2、当try和catch中有return时,finally仍然会执行;

3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,管finally中的代码怎么样,返回的值都不会改变,仍然是之前保存的值),所以函数返回值是在finally执行前确定的;

4、finally中最好不要包含return,否则程序会提前退出,返回值不是try或catch中保存的返回值。

1.e.printStackTrace()可以输出异常信息

2.-1为抛出异常的习惯写法

3.如果方法中try,catch,finally中没有返回语句,则会调用这三个语句块之外的return结果

4.finally块无论如何,不管前面是正常还是异常,都要执行。

5.finally 在try中的return之后 在返回主调函数之前执行。

String类常用方法



==” 和 equals() 有什么区别

· ==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象

· equals(): 比较存储在两个字符串对象中的内容是否一致

for循环中遍历

String[] abc = new String[3]{"a","b","c"};
for (String str : abc){
System.out.println(str);    //这个地方的冒号就是遍历abc的集合,取出每一个元素
}


举例:**查找字符新方法

public class HelloWorld {
public static void main(String[] args) {
// 定义一个字符串
String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";

int num = 0;

// 循环遍历每个字符,判断是否是字符 a ,如果是,累加次数

for (byte bt:(s.getBytes()))
//s.getBytes()  返回的是一个byte[];

//for(byte bt : s.getBytes())  表示创建一个byte类型的变量bt,并且用这个bt去迭代获取s.getBytes()返回的byte[];

{
// 获取每个字符,判断是否是字符a
if (bt == 'a') {
// 累加统计次数
num++;
}
}
System.out.println("字符a出现的次数:" + num);
}
}


字符串String和StringBuffer区别:

在Java中,除了可以使用 String 类来存储字符串,还可以使用 StringBuilder 类或 StringBuffer 类存储字符串,其中:

(1)String 类具有是不可变性:多个字符串进行拼接了以后产生一个新的临时变量并指向一个新的对象或新的地址。

(2)StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。

如果需要创建一个内容可变的字符串对象,应优先考虑使用 StringBuilder 类。

StringBuilder 对象,用来存储字符串,并对其做了追加和插入操作。这些操作修改了 str 对象的值,而没有创建新的对象,这就是 StringBuilder 和 String 最大的区别。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: