java5-6章复习

第二章 面向对象的基础认知

2-1 介绍类与对象

理解生活中类和对象

介绍面向对象编程

使用Java创建类和对象

类和对象的关系

类是抽象的概念,是对象的模板

对象是具体的事物,是类的具体实例

面向对象编程

面向对象编程是利用编程方式体现出现实中类与对象

从已有现实的类中定义程序中的类(class)

从类(Class)创建(实例化)具体的对象(Object)

Java创建类的语法

类名要有直白意义,最好是英文

首字母要大写

不要数字开头,不要包含特殊字符

创建类的实例对象

new关键字是创建实例对象最重要的标志

对象的命名规制

类名要有直白意义,最好是英文

首字母要大写

不要数字开头,不要包含特殊字符

2-2 创建类与对象

package hwd;
import java.util.Scanner;
 
public class JavaWork {//创建类
    
    public static void main(String[] args) {//主方法
        
        JavaWork duoduo = new JavaWork();
        JavaWork lucky = new JavaWork();
        
    }
 
}
 


 
 
2-3 成员变量

成员变量就是隶属于对象的变量

成员变量用于保存对象的静态特征

同类型的不同对象拥有相同的成员变量,但值彼此独立

package hwd;
import java.util.Scanner;
 
public class JavaWork {//创建类
    
    String name;
    int age;
    float weight;
    
    public static void main(String[] args) {//主方法
        
        JavaWork duoduo = new JavaWork();
        duoduo.name = "多多";
        duoduo.age = 6;
        duoduo.weight = 13.5f;
        
        JavaWork lucky = new JavaWork();
        lucky.name = "Lucky";
        lucky.age = 3;
        lucky.weight = 10.2f;
        System.out.println(duoduo.name + "今天" + duoduo.age + "岁了");
        System.out.println(lucky.name + "体重" + duoduo.weight + "千克");
    }
 
}
 


 
 

多多今天6岁了
Lucky体重13.5千克


2-4 方法的作用

什么是方法

方法是用于完成特定功能的整段代码

package hwd;

import java.util.*;

import java.text.*;

import java.sql.*;

import java.sql.Date;

 
 
class Dome{//创建类
    
    public String isOddNumber(int num){
        System.out.println("原始数字为:" + num);
        if(num % 2 == 0){
            return "偶数";
        }else{
            return "奇数";
        }
    }
    
 public static void main(String[]args){//主方法
     
    /* int a = 10;
     if(a % 2 == 0){
         System.out.println(a + "是偶数");
     }else{
         System.out.println(a + "是奇数");
     }
     
     int b = 5;
     if(b % 2 == 0){
         System.out.println(b + "是偶数");
     }else{
         System.out.println(b + "是奇数");
     }
     */
     
     int a = 10;
     Dome dome = new Dome();
     String r1 = dome.isOddNumber(a);
     System.out.println(a + "是" + r1);
     int b = 5;
    String r2 = dome.isOddNumber(b);
    System.out.println(b + "是" + r2);
     }
}

原始数字为:10
10是偶数
原始数字为:5
5是奇数


第3章 面向对象特征之封装

3-1 包-Package

把功能相似或相关的类组织在同一个包中

包也采用了树形目录的储存方式

通过包也可以限定类的访问权限

包的命名规范

包采用“逆域名法”进行命名,用“.”分割,单词全部小写

标准格式:域名后缀.组织机构名.项目[.模块名].包的职能

3-2 访问修饰符

访问修饰符用于控制类、成员变量、方法的访问范围


import java.util.*;
import java.text.*;
import java.sql.*;
import java.sql.Date;
 
 
class Dome{//创建类
    
    public String name;
    
    private void sayHello(){
    System.out.println("Hello world!");
    }
    
    void sayGoodbye(){
        System.out.println("Good bye!");
    }
    
 public static void main(String[]args){//主方法
 
     Dome dome = new Dome();
     dome.sayHello();
     
     
     
     }
}
package hwd;
import java.util.Scanner;
 
public class JavaWork {//创建类
    
    
    
    public static void main(String[] args) {//主方法
        
        Dome dome  = new Dome();
        dome.name = "Lily";
        
        
    }
 
}


 
 

 
Hello world!


3-3 面向对象特征之封装

面向对象三大特征

封装

继承

多态

封装

封装即隐藏功能的实现细节

利用对象与方法是实现封装的直接途径

良好的封装让代码更容易阅读与维护

3-4 对成员变量进行读写封装

import java.util.*;
import java.text.*;
import java.sql.*;
import java.sql.Date;
 
 
class Dome{//创建类
    
    public String owner;
    public String areaCode = "86";
    private long moblieNumber;
    
    
    public String getOwner(){
        return this.owner;
    }
    
    
    
    public void setOwner(String owner){
        this.owner = owner;
    }
    
    
    public String getAreaCode(){
        return this.areaCode;
    }
    
    
 public static void main(String[]args){//主方法
 
 
     
     
     
     
     }
}


import java.util.Scanner;
 
public class JavaWork {//创建类
    
    
    
    public static void main(String[] args) {//主方法
        
        Dome dome = new Dome();
        //dome.owner = "老齐";
        //dome.areaCode = "84";
        dome.setOwner("老齐");
        String owner = dome.getOwner();
        System.out.println(owner);
        String areaCode = dome.getAreaCode();
        System.out.println(areaCode);
        
    }


 
 
 

老齐
86


第4章 面向对象特性之继承和多态

4-1 面向对象特性之继承


 
public class Mark1 {
 
    protected String title;
    protected String color;
    protected String movie;
    
    public void description(){
        System.out.println("型号" + title);
        System.out.println("颜色" + color);
        System.out.println("首次出现电影" + movie);
        
    }
    
    private void fire(){
        System.out.println("利用手臂燃料泵射出火焰");
    }
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
        
        Mark1 mark1 = new Mark1();
        mark1.color = "银灰色";
        mark1.movie = "钢铁侠1";
        mark1.title = "马克1型";
        mark1.description();
        mark1.fire();
        
    }
 
}

型号马克1型
颜色银灰色
首次出现电影钢铁侠1
利用手臂燃料泵射出火焰


 
public class Hulk extends Mark1{
 
    private void repair(){
        System.out.println("弹射备件替换战损组件");
    }
    
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
        Hulk hulk = new Hulk();
        hulk.color = "反浩克装甲";
        hulk.title = "红色";
        hulk.movie = "复仇者联盟3";
        hulk.description();
        
        hulk.repair();
        
    }
 
}

型号马克1型
颜色银灰色
首次出现电影钢铁侠1
利用手臂燃料泵射出火焰

 
public class Mark85 extends Mark1{
 
    private void createShield(){
        System.out.println("利用纳米技术生成防御护盾");
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        Mark85 mark85 = new Mark85();
        mark85.color = "马克85型";
        mark85.movie = "红色";
        mark85.title = "复仇者联盟4";
        mark85.description();
        mark85.createShield();
        
        
 
    }
 
}

型号复仇者联盟4
颜色马克85型
首次出现电影红色
利用纳米技术生成防御护盾


 4-2面向对象特性之多态

多态

多态是同一个行为具有多个不同表现形式或形态的能力

实现多态的关键是接口

接口时一个抽象的类型,只提供方法的定义

实现类是一个接口的具体实现,要实现每一个接口方法的功能


 
public interface Language {
 
    public void voice();
    
}
package hwd;
 
public class French implements Language{
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
    }
 
    @Override
    public void voice() {
        // TODO Auto-generated method stub
        
        System.out.println("Comment puis-je me rendre a lh pital");
        
    }
 
}


public class English implements Language{
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
    }
 
    @Override
    public void voice() {
        // TODO Auto-generated method stub
        System.out.println("Hi,may I help you");
        
        
    }
 
}


 
public class Chinese implements Language{
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
    }
 
    @Override
    public void voice() {
        // TODO Auto-generated method stub
        
        System.out.println("你好,有什么可以帮到您的");
        
    }
 
}


public class CustomerService {
 
    
    public Language contact(int areaCode){
        if (areaCode == 86){
            return new Chinese();
        }else if (areaCode == 33){
            return new French();
        }else{
            return new English();
        }
    }
    
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        
        Language language = new English();
        language.voice();
        Language language1 = new Chinese();
        language1.voice();
        CustomerService cs = new CustomerService();
        Language language2 = cs.contact(86);
        language2.voice();
        
    }
 
}


 
public class Customer {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
        CustomerService customerService = new CustomerService();
        Language language = customerService.contact(33);
        language.voice();
        
    }
 
}

Comment puis-je me rendre a lh pital


4-3 ArrayList列表类的使用

ArrayList是Java内置的数据集合,用于存储多个数据

ArrayList是数组替代品,提供了更多的数据操作方法

ArrayList几乎是每一个项目比用的类


import java.util.*;
 
public class ArrayListSample {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
 
        List<String> bookList = new ArrayList<String>();
        bookList.add("红楼梦");
        bookList.add("西游记");
        bookList.add("水浒传");
        bookList.add("三国志");
        bookList.add(0,"镜花缘");
        System.out.println(bookList);
        String bookName = bookList.get(2);
        System.out.println(bookName);
        int size = bookList.size();
        System.out.println(size);
        bookList.remove(2);
        System.out.println(bookList);
        bookList.remove(bookList.size() - 1);
        System.out.println(bookList);
        for (String book : bookList){
            System.out.println("《" + book + "》");
        }
        
    }
 
}

[镜花缘, 红楼梦, 西游记, 水浒传, 三国志]
西游记
5
[镜花缘, 红楼梦, 水浒传, 三国志]
[镜花缘, 红楼梦, 水浒传]
《镜花缘》
《红楼梦》
《水浒传》

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值