标签:有一个 ring print .net 输入 float code 类继承 消失
String类:
程序可以直接使用,String类不能有子类使用String类声明并创建对象
String s = new String("we are students"); String t = new String("we are students");
s和t实体相同,但二者的引用不同(重点)
参与并置运算对象只要有一个为变量,就会在动态区存放得到的新的String对象的实体和引用。如果两个常量进行运算得到的仍为常量。
(1)public int length( ) 用来获取字符序列的长度;
(2)public boolean equals(String s) 比较当前String对象的字符序列是否与参数s指定的String对象的字符序列是否相同,String对象中存放的是引用;
(3)public boolean startsWith(String s)、public boolean endsWith(Sting s)
start判断当前String对象的字符序列前缀是否是参数指定的String对象s的字符序列;
end判断当前String对象的字符序列后缀是否是参数指定的String对象s的字符序列;
(4)public int compareTo(String s) 按字典序与参数指定的对象s的字符序列比较大小
(5)public boolean contains(String s) 判断当前String对象的字符序列是否包含参数s的字符序列;
(6)
public int indexOf (string s) 从当前String对象的字符序列的0索引位置开始检索首次出现s的字符序列位置并返回该位置,若没检索到,该方法的返回值为-1;
public int lastIndexOf(String s) 从当前String对象的字符序列的0索引位置开始检索最后一次出现s的字符序列的位置,并返回该位置,若没检索到,则返回-1;
(7)public String substring(int start,int end)复制当前对象的字符序列中的start位置至end-1位置上的字符得到的字符序列
(8)public String trim() 得到一个新的String对象,这个String对象的字符序列是当前String对象的字符序列去掉前后空格后的字符序列。
toString()方法调用形式:创建对象的类的名字@对象的引用的字符串表示
public byte[] getBytes()方法使用默认字符编码,将当前对象字符序列存放到字节数组中,并返回数组的引用。(注:默认字符编码为GB2312,一个汉字占两个字节)
StringTokenizer类
该类两个常用构造方法:区别:StringTokenizer类和Scanner类都可用于分解字符序列中的单词,StringTokenizer把单词存放到Scanner对象的实体中、获得单词速度较快,但Scanner仅存放分隔标记、节省内存空间。
StringBuffer类
Pattern类与Match类(较难)
public E push(E item)
实现压栈操作。public E pop()
实现弹栈操作。public boolean empty()
判断堆栈是否还有数据,有数据返回false,否则返回true。public E peek()
获取堆栈顶端的数据,但不删除该数据。public int search(Object data)
获取数据在对战中的位置。"System.out.println("")
我不太理解意义@SuppressWarnings("unchecked")
使用了注解就可以告诉编译器不用检查,这样子就可以避过编译时期间的安全检查。ArrayList<String> list = new ArrayList<String>();
1.下列关于super关键字的说法,正确的是
A.如果在子类中想使用被子类隐藏的成员变量或方法,就需要使用关键字super。
B.课本P123代码Example5_7.java中,Average类g()方法里“c=super.f()”调用的是Average类的float f()。
C.子类的构造方法如果没有明显地指明使用父类的哪个构造方法,子类就调用父类的不带参数的构造方法。
D.P124的程序Example5_8,如果UniverStudent子类地构造方法中省略super,则程序默认执行Student类的super()。
正确答案: A C D
2.下列关于abstract关键字的说法,正确的是
A . 可以使用static修饰abstract方法。
B . 非abstract类中不可以有abstract方法。
C . 不能使用new创建abstract类的对象。
D . 不允许使用final和abstract同时修饰一个方法.
E . 可以使用public abstract void eat(){};来声明抽象方法eat()。
F . 抽象方法只保留方法的功能,而具体的执行,交给继承抽象类的子类,由子类重写此抽象方法。
正确答案: B C D F
解析:5.9节。A项:abstract关键字不能应用于static、private或final 方法。E项:不能有方法体。
3.下列说法正确的是
A . 子类继承父类的构造方法。
B . abstract类的子类必须是非abstract类。
C . 子类继承的方法只能操作子类继承和隐藏的成员变量。
D . 子类重写或新增的方法也能直接操作被子类隐藏的成员变量。
正确答案: C
4.下列说法正确的是
A . UML通过使用实线连接类和它的接口。
B . 通过import语句可以引入包中的接口。
C . 接口可以调用类中的其他的非接口方法。
D . 接口属于引用型变量。
正确答案: B D
5.将下列(A,B,C,D)哪个代码替换下列程序中的【代码】不会导致编译错误?
interface Com {
int M = 200;
int f();
}
class ImpCom implements Com {
【代码】
}
A . public int f(){return 100+M;}
B . int f(){return 100;}
C . public double f(){return 2.6;}
D . public abstract int f();
正确答案: B
6.如果有以下程序片段
interface Some{
int x = 10;
}
public class Main{
public static void main (String [] args) {
System.out.println(Some.x);
}
}
以下描述正确的是
A . 编译失败
B . 显示10
C . 必须创建Some实例才能存取x
D . 显示0
正确答案: B
本周重点内容在于第八章的学习,之前只是机械地用例如String和Scanner这些类,通过这一章对“类”有了新的认识,之前的一些“为什么用这个?”的迷惑也逐渐解决了。通过测试反馈出来的问题漏洞还有很多,看完教材感觉自己会了,但浅层的记忆很快就会消失,在做题过程中一些概念定义还是模棱两可。下一步还要继续落实教材内容,更多地去理解记忆乃至学会应用。
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | |
---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 |
第一周 | 24/24 | 1/4 | 15/15 |
第二周 | 423/423 | 2/6 | 14/29 |
第三周 | 702/1109 | 1/7 | 16/45 |
第四周 | 918/2027 | 2/9 | 16/61 |
第五周 | 1208/3235 | 2/11 | 15/76 |
第六周 | 1137/4372 | 2/13 | 14/90 |
20165202 2017-2018-2 《Java程序设计》第6周学习总结
标签:有一个 ring print .net 输入 float code 类继承 消失
原文地址:https://www.cnblogs.com/jhs888/p/8745630.html