1、什么是面向对象?
面向对象是一种编程思想,是一种更符合人们思想的一种方式,我们把生活中的事物抽象成代码中的对象,万物皆对象.
来操作这个对象,完成代码的设计和编写.
举例子说明面向对象好处
原本的程序设计是: 按照一步一步来处理:
我们做饭-->种大米-->收割水稻--->剥皮-->淘米-->蒸米-->吃饭
面向对象的好处.找到会做饭的人,他就是我们的对象(对象能帮我们完成我们要做的事情)
面向对象就是由关注事情的过程变为关注哪个对象能完成这件事情
2、面向对象的三大思想特征是什么?
封装 继承 多态
3、什么是类,什么是对象?
类:是一系列相关属性和行为的集合
对象:是类的实例化体现
4、如何使用类中的成员变量和成员方法?
创建类对象,再类名点调用
5、成员变量和局部变量的区别有哪些?
位置不同:成员变量在类中方法外,局部变量在方法内,或者方法声明上
存储位置不同:成员变量存储在堆内存中, 局部变量存储在栈内存中
生命周期不同:成员变量随着对象的加载而创建,随着对象的消失而消失
局部变量随着方法的加载而创建,随着方法的弹栈而消失
使用方法:局部变量使用前必须赋值.
6、回答如下问题:
Java语言最基本的单位是: 类
计算机能直接识别的进制是:二进制
计算机最小的存储单位是: 计算机存储信息的最小单位,称之为位(bit,又称比特),其计量基本单位是字节(Byte。简称B)
7、什么是匿名对象?什么时候使用?
没有名字的对象. 只调用一次对象的时候使用 或者当实际参数传递的时候.
8、什么是封装?封装的好处,原则分别是什么?
封装:是隐藏对象的属性和实现细节,仅提供对外的公共访问方式
好处:代码复用性强,------------广义的封装
和提高安全性
原则:将不需要对外提供的内容都隐藏起来,仅提供公共的访问方式
把属性隐藏,提供公共方法对其访问。
9、封装指的就是private,这句话对吗?
不对,private只是封装方法的一种.
10、this是什么?
代表对当前对象的引用.
11、根据如下需求,完成代码(按照标准格式写),然后在测试类中测试。
需求一:
public class Text {
public static void main(String[] args) {
//调用手机对象//创建对象的格式: 类名 对象名 = new 类名();
Phone p = new Phone();
//设置对象的属性值: 对象名.属性名 = 值;
p.brand = "诺基亚";
p.price = 199;
System.out.println("品牌" + p.brand + "价格" + p.price);
//对象调用方法: 对象名.方法名();
p.call();
p.sendMessage();
p.playGame();
//调用人对象
Person person = new Person();
person.name = "不知道";
person.age = 10;
person.gender = "男";
System.out.println("姓名" + person.name + "年龄" + person.age + "性别"+ person.gender);
person.study();
person.sleep();
//调用动物对象
Animal a = new Animal();
a.name = "猪";
a.age = 1;
System.out.println(a.name + " 年龄 " + a.age);
a.eat();
//调用 狗对象
Dog d = new Dog();
d.name = "狗";
d.age = 1;
System.out.println(a.name + " 年龄 " + a.age);
d.eat();
d.lookHome();
//调用 猫对象
Cat c = new Cat();
c.name = "猫";
c.age = 1;
System.out.println(a.name + " 年龄 " + a.age);
c.eat();
c.catchMouse();
//调用 学生对象
Student stu = new Student();
stu.english = 10;
stu.math = 10;
stu.chinese = 10;
stu.getSum(stu.english,stu.math,stu.chinese);
int sum = getSum1(stu.english,stu.math,stu.chinese);
System.out.println(sum);
}
}
/* 手机类Phone
属性:品牌brand,价格price
行为:打电话call,发短信sendMessage,玩游戏,playGame
*/
class Phone { //定义手机 类
//成员属性品牌 ,价钱
String brand;
int price;
//成员方法 打电话,发短信
public void call() {
System.out.println("打电话");
}
public void sendMessage() {
System.out.println("发短信");
}
public void playGame() {
System.out.println("玩游戏");
}
}
/* 需求二:
人类Person
属性:姓名name,年龄age,性别gender
行为:学习study,睡觉sleep
*/
class Person { //创建人 类
//创建属性 姓名 年龄 性别
String name;
int age;
String gender;
//成员方法 学习 睡觉
public void study() {
System.out.println("学习");
}
public void sleep() {
System.out.println("睡觉");
}
}
/*
需求三:
动物类Animal
属性:姓名name,年龄age
行为:吃饭eat
*/
class Animal { //创建动物类
//成员属性 姓名 年龄
String name;
int age;
//成员方法吃
public void eat() {
System.out.println("吃饭");
}
}
/* 需求四:
狗类Dog
属性:姓名name,年龄age
行为:吃饭eat,看家lookHome
*/
class Dog { //创建狗类
//成员变量
String name;
int age;
//成员方法
public void eat() {
System.out.println("吃饭");
}
public void lookHome() {
System.out.println("吃饭");
}
}
/* 需求五:
猫类Cat
属性:姓名name,年龄age
行为:吃饭eat,抓老鼠catchMouse
*/
class Cat { //创建猫类
//成员变量
String name;
int age;
//成员方法
public void eat() {
System.out.println("吃饭");
}
public void catchMouse() {
System.out.println("抓老鼠");
}
}
/* 需求六:
学生类Student
属性:语文成绩chinese,数学成绩math,英语成绩english
行为:求总成绩的方法getSum()
*/
class Student { //创建学生类
//成员属性
int chinese;
int math;
int english;
//成员方法
public void getSum(int chinese,int math,int english) {
int sum = this.chinese + this.math + this.english;
System.out.println("总成绩是: " + sum );
}
}
package com.heima;
public class Text {
/**
* @param args
*/
public static void main(String[] args) {
//创建手机对象
Phone p1 = new Phone();
p1.setBrand("诺基亚");
p1.setPrice(199);
System.out.println(p1.getBrand() + " 价格 " + p1.getPrice());
p1.call();
p1.sendMessage();
p1.playGame();
//创建人 对象
Person p2 = new Person();
p2.setName("王二狗");
p2.setAge(18);
p2.setGender("男");
System.out.println(p2.getName() + " 年龄 " + p2.getAge() + " 性别 " + p2.getGender());
p2.sleep();
p2.study();
//创建动物对象
Animal a = new Animal();
a.setName("大黄");
a.setAge(1);
System.out.println(a.getName() + " " + a.getAge());
a.eat();
//创建狗对象
Dog d = new Dog();
d.setName("猫咪");
d.setAge(2);
System.out.println(d.getName() + " " + d.getAge());
d.eat();
d.lookHome();
//创建 猫对象
Cat c = new Cat();
c.setName("兔子");
c.setAge(3);
System.out.println(c.getName() + " " + c.getAge());
c.eat();
c.catchMouse();
//创建 学生类
Student s = new Student();
s.setChinese(60);
s.setEnglish(59);
s.setMath(60);
s.getSum(s.getChinese(), s.getEnglish(), s.getMath());
}
}
/*
* 手机类Phone 属性:品牌brand,价格price 行为:打电话call,发短信sendMessage,玩游戏,playGame
*/
/**
* @author XL
*
*/
class Phone { // 定义手机 类
// 成员属性品牌 ,价钱
private String brand;
private int price;
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
// 成员方法 打电话,发短信
public void call() {
System.out.println("打电话");
}
public void sendMessage() {
System.out.println("发短信");
}
public void playGame() {
System.out.println("玩游戏");
}
}
/*
* 需求二: 人类Person 属性:姓名name,年龄age,性别gender 行为:学习study,睡觉sleep
*/
class Person { // 创建人 类
// 创建属性 姓名 年龄 性别
private String name;
private int age;
private String gender;
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 getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
// 成员方法 学习 睡觉
public void study() {
System.out.println("学习");
}
public void sleep() {
System.out.println("睡觉");
}
}
/*
* 需求三: 动物类Animal 属性:姓名name,年龄age 行为:吃饭eat
*/
class Animal { // 创建动物类
// 成员属性 姓名 年龄
private String name;
private int age;
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 void eat() {
System.out.println("吃饭");
}
}
/*
* 需求四: 狗类Dog 属性:姓名name,年龄age 行为:吃饭eat,看家lookHome
*/
class Dog { // 创建狗类
// 成员变量
private String name;
private int age;
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 void eat() {
System.out.println("狗吃肉");
}
public void lookHome() {
System.out.println("会看门");
}
}
/*
* 需求五: 猫类Cat 属性:姓名name,年龄age 行为:吃饭eat,抓老鼠catchMouse
*/
class Cat { // 创建猫类
// 成员变量
private String name;
private int age;
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 void eat() {
System.out.println("猫吃鱼");
}
public void catchMouse() {
System.out.println("抓老鼠");
}
}
/*
* 需求六: 学生类Student 属性:语文成绩chinese,数学成绩math,英语成绩english 行为:求总成绩的方法getSum()
*/
class Student { // 创建学生类
// 成员属性
private int chinese; //语文成绩
private int math;
private int english;
public int getChinese() {
return chinese;
}
public void setChinese(int chinese) {
this.chinese = chinese;
}
public int getMath() {
return math;
}
public void setMath(int math) {
this.math = math;
}
public int getEnglish() {
return english;
}
public void setEnglish(int english) {
this.english = english;
}
// 成员方法
public void getSum(int chinese, int math, int english) {
int sum = this.chinese + this.math + this.english;
System.out.println("总成绩是: " + sum);
}
public int getSum1(){
return chinese + math + english;
}
}
|
|