千锋学习的第16天;static

	千锋学习的第十六天。
			今天学习了java三大修饰符"static"
					这是今天的课后练习题

一、(static )有如下代码
Class Myclass{
Static int a
Int b
}
Class Testmian{
Public static void main(String args[]){
Myclass mc1 =new Myclass();
Myclass mc2=new Myclass();
Mc1.a=100;
Mc1.b=200;
Mc2.a=300;
Mc2.b=400;
System.out.println(mc1.a);
System.out.println(mc1.b);
System.out.println(mc2.a);
System.out.println(mc2.b);
}
}
请输出结果
答案是:Mc1.a300, mc1.b200, mc2.a 300, mc3.b 400
二、(静态成员)有如下代码
class Myclass{
int a
static int b
void fa(){}
static void fb(){}
public void m1(){
System.out.println(a);//1
System.out.println(b);//2
fa();//3
fb();//4
}
public static void m2(){
System.out.println(a);//5
System.out.println(b);//6
fa();//7
fb();//8
}
}
请问那些编译会出错?( E,G)
a //1
b //2
c //3
d //4
E //5
F //6
G //7
H //8
三、静态代码如下
class MuClass{
static int count =0;
public MyClass(){
count++;
System.out.pringln(count);
}
}
public class TestMain{
public static void main(String [] args){
MyClass mc1=new MyClass();
MyClass mc2=new MyClass();
MyClass mc3=new MyClass();
}
}
写出输出结果(1,2,3)。
四、(静态初始化代码块)有如下代码
class MyClass{
static int i=10;
static{
i=20;
System.out.println(“in Static”);
}
public MyClass(int i){
System.out.println(“MyClass(int)”)
this.i=i;
}
}
public class TestMain{
public static void main(String[] args){
MyClass m1=new MyClass();
System.out.println(mc1.i);
MyClass mc2=new MyClass(10);
System.out.pringln(mc2.i)
}
}
请输出程序结果(20,10)
五、(静态方法)有以下代码
class Super{
public static void m1(){
System.out.println(“m1 in Super”)
}
public void m2(){
System.out.println(“m2 in Super”);
}
}
class Sub extends Super{
public static void m1(){
System.out.println(“ m1 in Sub”)
}
}
public void m2(){
public void m2(){
System.out.println(“m2 in Sub”);
}
}
public class TestMain{
public static void main(String[] args){
Super sup=new Sub();
sup.m1();
sup.m2();
Sub sub=(Sub)sup;
sub.m1();
sub.m2();
}
}
写出这个程序的运行结果
sup.m1输出结果m1 in Super
sup.m2 输出结果 m2 in sub
sub.m1输出结果m2 in Sub
sub.m2 输出结果 m2 in sub

六、(static )以下那些论述是正确的(C,D,E)
A、静态方法中不能调用非静态方法
B、非静态方法中不能调用静态方法
C、静态方法不能被覆盖
D、静态方法能够用类名直接调用
E、可以在不产生任何一个对象的情况下调用静态方法
F、静态方法里可以使用this

十五题(static)设计一个类MyClass,为Myclass增加一个count,用来统计总共创建了多少个对象

public class TestA {
public static void main(String[] args) {

	As a1=new As();
	As a2=new As();
	As a3=new As();
	As a4=new As();	
	As a5=new As();
	As a6=new As();
}

}
class As{
static int count=0;
public As() {
count++;
System.out.println(count);
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值