2018-07-06 周测题整理

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

分支结构有if结构、switch结构

if结构:


switch结构:


循环结构有while结构,do-while结构,for循环

while结构:



do-while结构:



for循环:




2.写出控制循环结构的相关语句,并描述其作用

break:在循环体中,使用 break 关键字跳出整个循环。


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




3.数组初始化的方式有哪些?请举例说明。

静态初始化:

int[]arrs = {1,2,3,4};

动态初始化:

type[] arrayName = new type[length];



4.请写出一个合理的数组,并使用foreach循环遍历到控制台。

	for (int i = 0; i < arrs3.length; i++) {
	    System.out.println(arrs3[i]);
	}
	
		for(int a : arrs3) {
	    System.out.println(a);
	}



5.类和对象是什么关系?类的命名规范是什么?

类是一群对象的特征母版

类是一群对象的抽象

对象是类的具体实例

命名规范:首先要符合标识符的定义,在实际开发中,我们一般使用驼峰命名方式定义类名,并且首字母大写。



6.类的成员有哪些?用于成员变量的修饰符有哪些?

成员变量,方法,构造器

private,protected,public,static,final



7.成员变量包含哪些?命名规范分别是什么?

实例变量:符合标识符定义规则,开发中,一般用驼峰命名,首字母小写

静态变量(类变量):符合标识符定义规则,在开发中,一般全部大写,多个单词之间用_



8.请书写定义方法的语法?

[修饰符] 方法的返回值数据类型 方法名(形参列表){

            方法体语句

}



9.请书写构造器定义的语法?构造器的用途是什么?

[修饰符] 类名(参数列表){

        执行语句

}


10.请简述你对this的理解?写出使用this调用成员变量、方法、构造器的代码示例。

this本身没有什么意义,在具体应用中,在方法中调用this,代表当前该方法的对象

public class Client {
	private String stu;
	public Client(String stu) {
		this.stu = stu;
	}
	public void fun() {
		System out println(this.stu);
	}		
}



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

其实传递的是值类型;如果传入的是基本数据类型,原数据的值不会发生改变,如果是引用数据类型会改变,因为方法参数传递是“拷贝值(如果是基本数据类型拷贝本身的值,如果是引用数据类型拷贝的是对象的引用、地址)的副本”



12.方法签名是什么意思?

只包含方法名和参数列表


13.什么是方法重载?

如果在一个类中出现多个方法名一样,参数列表不一样的情况,我们把这样的方法称为方法的重载。
重载的意义是这些方法实现的功能基本一致,但是传入的参数可能不一样。


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

 1.局部变量

 局部变量是指定义在方法或代码块中的变量,局部变量必须初始化,在方法或代码块内有效,之外则无效,方法执行开始入栈时创建,执行完毕出栈时销毁。


  2.实例变量

   其作用域受限定符限定,Private的只能在本类中使用,protected子类可用,public任何地方都可用。

   生命周期从对象创建开始到对象销毁结束。


 3.类变量

    类变量是指类的static变量,用类名可以直接访问。生命周期从加载类开始,到销毁类结束。



15.请书写标准的对下面两个成员变量的封装方法:
    a) private String name;

    b) private String stuCode;

public void setName(String name) {
    this.name = name;
}
public String getName() {
    return this.name;
}

public void setStuCode(String stuCode) {
    this.stuCode = stuCode;
}
public String getStuCode() {
    return this.stuCode;

}



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

符合标识符的命名规范,在实际开发中,为了让类有相对唯一性,使用企业的域名倒着写来定义包名,包名全部用小写规范。

com.dodoke.项目名,模块名


17.我们一般在什么情况下使用import语句?如果不使用import语句,有什么其他的解决方案?

如果在一个类中需要引用不在当前类包中的其他类的时候,使用import语句

不使用import使用类全名:类的包名+类名


18.访问控制修饰符有哪些?分别的控制范围是什么?

private:同一类

default:同一类,同一个包

protected:同一类,同一包,子类

public:所有都可以


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

数值型:0,字符串:'\u0000',布尔型:false,

引用数据类型:null


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

java.lang:包含了 Java 语言的核心类库,如 String、System、Math等等,使用该包下的类是不需要显式引入;
java.util:包含了大量的工具类,如 Date、集合框架;
java.net:Java 网络编程的类和接口包;
java.io:Java 输入输出,如流等方面编程的包;
java.text:格式化方面的类;
java.sql:数据库编程方面的类和接口包;

java.awt:图形用户界面方面的类和接口包。



附加题:编程实现
55岁天秤座的张老师在给南通青鸟教育Java100班的学员上Java课

(提示:需要定义的类包括:老师类、学员类、课程类等等,要运用封装的概念,要有类变量的定义。最后需要通过方法在控制台打印出上述语句)


Teacher类

    package com.dodoke.test02;  
    /**  
     * 创建教师类  
     * @author 54649 
     *  
     */  
    public class Teacher {  
        //声明教师的姓名,年龄,星座  
        private String name;  
        private int age;  
        private String constellation;  
        //创建构造器  
          
        public Teacher(String name, int age, String constellation) {  
            super();  
            this.name = name;  
            this.age = age;  
            this.constellation = constellation;  
        }  
        public Teacher() {  
            super();  
              
        }  
        //对属性值封装  
        public String getName() {  
            return name;  
        }  
        public void setName(String name) {  
            this.name = name;  
        }  
        public int getAge() {  
            return age;  
        }  
        public void setAge(int age) {  
            this.age = age;  
        }  
        public String getConstellation() {  
            return constellation;  
        }  
        public void setConstellation(String constellation) {  
            this.constellation = constellation;  
        }  
    }  

Student类

    package com.dodoke.test02;  
    /**  
     * 学生类
     * @author 54649
     *  
     */  
    public class Student {  
      private String name;  
      private String calss;  
    public Student() {  
        super();  
    }  
    public Student(String name, String calss) {  
        super();  
        this.name = name;  
        this.calss = calss;  
    }  
    public String getName() {  
        return name;  
    }  
    public void setName(String name) {  
        this.name = name;  
    }  
    public String getCalss() {  
        return calss;  
    }  
    public void setCalss(String calss) {  
        this.calss = calss;  
    }    
    }  

Course类

    package com.dodoke.test02;  
    /**  
     * 建立课程类
     * @author 54649
     *  
     */  
    public class Course {  
      private String name;  
      //建立构造器  
    public Course() {  
        super();  
    }  
    public Course(String name) {  
        super();  
        this.name = name;  
    }  
      //封装  
    public String getName() {  
        return name;  
    }  
    public void setName(String name) {  
        this.name = name;  
    }  
    }  


School类

    package com.dodoke.test02;  
    /**  
     * 建立shool类
     * @author 54649
     *  
     */  
    public class School {  
       public static final String NAME="南通青鸟教育";  
    //构造器  
    public School() {  
        super();  
    }     
    }  


Main类

package com.dodoke.test02;  
/**  
 * 
 * @author 54649 
 *  
 */  
public class Main {  
    public static void main(String[] args) {  
    
    Teacher zh=new Teacher("张老师",55,"天秤座");  
    Student stu=new Student("学员","Java100班");  
    Course cou=new Course("Java课");  
     
   System.out.println(zh.getAge()+"岁"+zh.getConstellation()+"的"  
+zh.getName()+"在给"+School.name+stu.getCalss()+"的"+stu.getName()+"上"+cou.getName());  
            }     
    }  





  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值