5.18 周测

分别写出分支结构,循环结构的语法格式


if 结构
if (logic expression) {
    statement;
}
if (logic expression) {
    statement;
} else {
    statement;
}
if (logic expression) {
    statement;
} else if (logic expression) {
    statement;
} else {
    statement;
}
switch 结构
switch (expression) {
    case condition1 : {
        statement;
        break;
    }
    case condition2 : {
        statement;
        break;
    }
    default : {
        statement;
        break;
    }
}

while 结构
(init_statement);
while (test_expression) {
    body_statement;
    [iteration_statement];

}

do-while 结构
(init_statement);
do {
    body_statement;
    [iteration_statement];

} while (test_expression)

for 循环
for ([init_statement]; test_expression; [iteration_statement]) {
    body_statement;

}

写出控制循环结构的相关语句,并描述其作用
break:在循环体中,使用 break 关键字跳出整个循环。

continue:在循环体中,使用 continue 跳出本次循环,循环还会继续执行。

数组初始化的方式有哪些?请举例说明。
静态初始化:
type[] arrayName = {element1, element2,....}; // 比较常见
type[] arrayName = new type[]{element1, element2,...};
int[] arrs2;
arrs2 = new int[]{1, 2 ,3 ,4};
int[] arrs = {1, 2, 3, 4}; // 简写
动态初始化
语法:

type[] arrayName = new type[length];

请写出一个合理的数组,并使用foreach循环遍历到控制台
         int[] nums = { 1, 2, 3, 4 };
            foreach (int i in nums)
            {
                System.out.println(i);

            }

类和对象是什么关系?类的命名规范是什么?
类是一群对象的特征母版,对象是类的具体实例。
类是一群对象的抽象。
类名:首字母大写,通常由多个单词合成一个类名,要求每个单词的首字母也要大写,例如class HelloWorldApp; 

类的成员有哪些?用于成员变量的修饰符有哪些?
   类中有两种成员:成员变量以及成员函数。其中成员变量分为静态的成员变量以及非静态的成员变量;成员函数分为静态的成员函数以及
非静态的成员函数。
public(公共访问控制符),指定该变量为公共的,他可以被任何对象的方法访问。
private(私有访问控制符)指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。
protected(保护访问控制符)指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。
friendly ,在同一个包中的类可以访问,其他包中的类不能访问。
final,最终修饰符,指定此变量的值不能变。
static(静态修饰符)指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。
transient(过度修饰符)指定该变量是系统保留,暂无特别作用的临时性变量。

volatile(易失修饰符)指定该变量可以同时被几个线程控制和修改。

成员变量包含哪些?命名规范分别是什么?
修饰符,数据类型,默认值
修饰符:可以省略,也可以是 public protected private static final abstract,其中 public protected private 只允许出现一个
数据类型:可以是任意的数据类型(包含基本数据类型、类类型、数组类型)
默认值:如果是类类型的,没有定义默认值,那么成员变量的值为 null,如果是基本数据,没有定义默认值,

那么成员变量的值是有意义的,比如 int 就是 0,boolean 就是 false。

请书写定义方法的语法?
[修饰符] 方法的返回值数据类型 方法名(形参列表) {
    方法体语句;

}

请书写构造器定义的语法?构造器的用途是什么?
[修饰符] 类名([参数列表]) {}

构造器是用来创建和初始化对象的

请简述你对this的理解?写出使用this调用成员变量、方法、构造器的代码示例。
this是一个引用类型,在队中的每一个对象上都有this,this保存内存地址指向自身。this指当前对象
this可以通过一个构造方法调用另一个构造方法以实现代码重用的作用。
this应当出现在构造方法第一行。
 ThisTest(int i){
       this.i=i+1;//此时this表示引用成员变量i,而非函数参数i
      System.out.println("Int constructor i——this.i:  "+i+"——"+this.i);
       System.out.println("i-1:"+(i-1)+"this.i+1:"+(this.i+1));
       //从两个输出结果充分证明了i和this.i是不一样的!}


    //  第二个构造器:有一个String型形参
    ThisTest(String s){
       System.out.println("String constructor:  "+s);
    }
    //  第三个构造器:有一个int型形参和一个String型形参
    ThisTest(int i,String s){
       this(s);//this调用第二个构造器
       //this(i); 
       /*此处不能用,因为其他任何方法都不能调用构造器,只有构造方法能调用他。
       但是必须注意:就算是构造方法调用构造器,也必须为于其第一行,构造方法也只能调
       用一个且仅一次构造器!*/
       this.i=i++;//this以引用该类的成员变量
       System.out.println("Int constructor:  "+i+"/n"+"String constructor:  "+s);
    }
    public ThisTest increment(){
       this.i++;
       return this;//返回的是当前的对象,该对象属于(ThisTest)
    }
    public static void main(String[] args){
       ThisTest tt0=new ThisTest(10);
       ThisTest tt1=new ThisTest("ok");
       ThisTest tt2=new ThisTest(20,"ok again!");
System.out.println(tt0.increment().increment().increment().i);
       //tt0.increment()返回一个在tt0基础上i++的ThisTest对象,
       //接着又返回在上面返回的对象基础上i++的ThisTest对象!
    }

}

方法的参数其实传递的是什么类型的数据?如果传入的是基本数据类型,是否原数据的值会发生改变?如果传入的是引用数据类型呢?阐述原因。

基本数据类型 引用数据类型
如果方法中传入的是基本数据类型,那么原变量的值是不会发生改变的,如果方法中传入的是引用数据类型(即类类型),那么传入方法中,如
果对对象的相关属性进行了修改,那么原对象的相关属性也会发生改变。
基本数据类型按值传递,相当于复制了一份过去,引用数据按地址传递,两个地方根据地址使用同一份数据,如被更改,则原有数据也会更改,例如数组,在传递数组时,如果接收到数组之后,对其修改,

那么原来的数组也会同时修改,因为它们指向同一个地址!

方法签名是什么意思?

方法签名由方法名称和一个参数列表(方法的参数的顺序和类型)组成。

什么是方法重载?

      重载就是函数或者方法有相同的名称,但是参数列表不相同的情形,
这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。在java中同一个类中的2
个或2个以上的方法可以有同一个名字

,只要它们的参数声明不同即可。这种情况下,该方法就被称为重载,这个过程称为方法重载 

请分别说明类变量、实例变量、局部变量的生命周期?

1,局部变量
局部变量是指定义在方法或代码块中的变量,局部变量必须初始化,在方法或代码块内有效,之外则无效,方法执行开始入栈时创建,执行完毕出栈时销毁。
2,实例变量
其作用域受限定符限定,Private的只能在本类中使用,protected子类可用,public任何地方都可用。
生命周期从对象创建开始到对象销毁结束。
3, 类变量
类变量是指类的static变量,用类名可以直接访问。


生命周期从加载类开始,到销毁类结束。

  1. 请书写标准的对下面两个成员变量的封装方法:
    a) private String name;
    b) private String stuCode;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getStuCode() {
return stuCode;
}
public void setStuCode(String stuCode) {
this.stuCode = stuCode;

}

在企业开发中包名定义的规范是什么?

第一层是企业的域名的反写
例如:com.ntqingniao
第二层是企业项目的名称
例如:com.ntqingniao.j96、com.ntqingniao.crm
第三层是企业项目模块的名称

例如:com.ntqingniao.j96.oop、com.ntqingniao.crm.base



我们一般在什么情况下使用import语句?如果不使用import语句,有什么其他的解决方案?
当需要使用除了lang包之外的class的时候需要使用import导入使用的class所在的包

在同一包中的类可以互相引用,无需import语句

访问控制修饰符有哪些?分别的控制范围是什么?
public: 对外公开,可以在任何地方访问;
protected:当前包下及子类可以访问;
protected:没有访问控制修饰符,同一个包中可以访问;

private:只有当前类可以访问

对象在创建时的成员变量的默认值分别是什么?

基本数据:数值型的为0,布尔类型的为false,char类型的为’\u0000’;

引用数据类型:null;

请至少写出3个常用的JDK包。

java.lang,java.util,java.net,java.io,java.text,java.sql,java.awt



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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值