练习代码(二)隐藏具体实现

小白做课后习题,有不对的地方或者不好的地方多多包容。

1. 编写一个创建ArrayList对象的程序,不要明确导入java.uril.*。

package five;

public class Test {
public static void main(String[] args){
java.util.ArrayList a = new java.util.ArrayList();
}

}

2. 在5.1节,将关于mypackage的程序代码片段改写成一组可编译及运行的Java文件。

package mypackage;


public class Myclass {
public void print(){
System.out.println("Hello World!");
}
}

package five;
import mypackage.Myclass;;


public class Test {
public static void main(String[] args){
Myclass a = new Myclass();
a.print();
}
}

3. 添加 rint() 和 rintln() 的所有必要的重载版本,以处理所有不同的Java基本类型,从而使本章中所定义的P类通用化。

package mypackage;

public class P {
public static void rint(String s){
System.out.print(s);
}
public static void rintln(String s){
System.out.println(s);
}
public static void rint(char s){
System.out.print(s);
}
public static void rintln(char s){
System.out.println(s);
}
public static void rint(int s){
System.out.print(s);
}
public static void rintln(int s){
System.out.println(s);
}
...
}

4. 创建一个带有public、private、protected和包访问权限字段以及方法成员的类。创建该类的一个对象,看看那在试图调用所有类成员时,会得到什么类型的编译信息。

package mypackage;

class Test{
public String a = "Hello World!";
private int b = 123;
protected char c = 'J';
boolean d = false;
public void say(){}
private void call(){}
protected void speak(){}
}

public class Myclass {
public static void main(String[] args){
Test test = new Test();
test.say();
test.call(); // 出现错误
test.speak();
System.out.println(test.a);
System.out.println(test.b); //出现错误
System.out.println(test.c);

}

5.创建一个ConnectionManager的类,该类管理一个元素为Connection对象的固定数组。客户端程序员不能直接创建Connection对象,而只能通过ConnectionManager中的某个static方法来获取它们。

package mypackage;

class Connection{
private Connection(){}
public Connection[] array(){
System.out.println("Hello World!");
Connection[] a1 = new Connection[5] ;
return a1;
}
public static Connection a = new Connection();
public static Connection get(){
return new Connection();
}
}

public class ConnectionManager {
public static void main(String[] args){
Connection b = Connection.a;
Connection c = Connection.get();
b.array();
c.array();
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值