A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© gcno93 中级黑马   /  2016-9-2 23:16  /  748 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1、什么是面向对象?
        强调的对象,把事情交给对象去做,那就简单很多了.
2、面向对象的三大思想特征是什么?
                封装,继承,多态

3、什么是类,什么是对象?
        类:一组属性和方法的集合
        对象:一类事物的具体实现

4、如何使用类中的成员变量和成员方法?
        对象.成员变量
        对象.成员方法

5、成员变量和局部变量的区别有哪些?
        1.在类的位置
                1.成员变量:在类里,在方法上
                2.局部变量:在方法里或方法的声明上
        2.在内存的位置
                1.成员变量:在堆中
                2.局部变量:在栈中
        3.生命周期
                1.成员变量:随着对象的创建而存在,随着对象的消失而消失
                2.局部变量:随着方法执行到该变量的定义时存在,出了作用域而消失
        4.初始化值
                1.成员变量:有默认的初始化值
                2.局部变量:没有默认的初始化值,使用时必须初始化

6、回答如下问题:
        Java语言最基本的单位是:类
        计算机能直接识别的进制是:二进制
        计算机最小的存储单位是:bit

7、什么是匿名对象?什么时候使用?
        没有名字的对象
        1.可以作为实参
        2.如果只调用一次该对象的成员函数,那么可以使用匿名对象

8、什么是封装?封装的好处,原则分别是什么?
        封装:隐藏对象属性和实现细节,对外提供公共的访问方式
        封装的好处:
                1.提高代码的复用性
                2.提高代码的安全性
        原则:隐藏对象属性和实现细节,对外提供公共的访问方式

9、封装指的就是private,这句话对吗?
        不对,只是封装的一种体现

10、this是什么?
        所属函数的调用者对象

11、根据如下需求,完成代码(按照标准格式写),然后在测试类中测试。
        需求一:
                手机类Phone
                        属性:品牌brand,价格price
                        行为:打电话call,发短信sendMessage,玩游戏,playGame
public class Phone {
        private String brand;  //品牌
        private float price;   //价格
        //打电话
        public void call(){
                System.out.println("打电话");
        }
        //发短信
        public void sendMessage(){
                System.out.println("发信息");
        }
        //玩游戏
        public void playGame(){
                System.out.println("完游戏");
        }
        public String getBrand() {
                return brand;
        }
        public void setBrand(String brand) {
                this.brand = brand;
        }
        public float getPrice() {
                return price;
        }
        public void setPrice(float price) {
                this.price = price;
        }
}

        需求二:
                人类Person
                        属性:姓名name,年龄age,性别gender
                        行为:学习study,睡觉sleep
public class Person {
        private String name;  //姓名
        private int age;  //年龄
        private char gender;//性别
        //学习
        public void study() {
                System.out.println("学习");
        }
        //睡觉
        public void sleep() {
                System.out.println("睡觉");
        }
        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 char getGender() {
                return gender;
        }
        public void setGender(char gender) {
                this.gender = gender;
        }
}
        需求三:
                动物类Animal
                        属性:姓名name,年龄age
                        行为:吃饭eat
public class Animal {
        private String name;//姓名
        private int age;//年龄
        //吃饭
        public  void eat() {
                System.out.println("吃");
        }
        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;
        }
}
        需求四:
                狗类Dog
                        属性:姓名name,年龄age
                        行为:吃饭eat,看家lookHome
public class Dog {
        private String name;//姓名
        private int age;//年龄
        //吃饭
        public  void eat() {
                System.out.println("吃");
        }
        //看家
        public void lookHome() {
                System.out.println("看家");
        }
        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;
        }
}

        需求五:
                猫类Cat
                        属性:姓名name,年龄age
                        行为:吃饭eat,抓老鼠catchMouse
public class Cat {
        private String name;//姓名
        private int age;//年龄
        //吃饭
        public  void eat() {
                System.out.println("吃");
        }
        //抓老鼠
        public void catchMouse() {
                System.out.println("抓老鼠");
        }
        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;
        }
}

        需求六:
                学生类Student
                        属性:语文成绩chinese,数学成绩math,英语成绩english
                        行为:求总成绩的方法getSum()
public class Student {
        private float chinese;//语文成绩
        private float math;//数学成绩
        private float english;//英语成绩
        //总成绩的方法
        public  float getSum() {
                return this.chinese+this.math+this.english;
        }
        public float getChinese() {
                return chinese;
        }
        public void setChinese(float chinese) {
                this.chinese = chinese;
        }
        public float getMath() {
                return math;
        }
        public void setMath(float math) {
                this.math = math;
        }
        public float getEnglish() {
                return english;
        }
        public void setEnglish(float english) {
                this.english = english;
        }
}               

1 个回复

倒序浏览
学习了,学习了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马