美文网首页
Java面向对象 基础知识(三)

Java面向对象 基础知识(三)

作者: 环境与方法 | 来源:发表于2018-07-19 21:27 被阅读2次
  1. 抽象类:包含一个抽象方法的类就是抽象类
    抽象方法:用abstract关键字声明,而未被实现的方法
    抽象类不能实例化,必须通过子类实例化
    抽象类被子类继承,子类(如果不是抽象类)必须重写抽象类中的所有抽象方法
    格式:
abstract class Abs {
    private int age;
    public void tell() {

    }
    // 抽象方法
    public abstract void say();
}

class AbsSon extends Abs {
    public void say() {
        System.out.println("I print sth.");
    }
}


public class Extends01 {
    public static void main(String[] args) {
        AbsSon a = new AbsSon();
        a.say();
    }
}
  1. 接口:一种特殊的类,里边全部是由全局常量和公共的抽象方法组成
    接口的格式:
Interface 接口名称{
    全局常量
    抽象方法
}

接口的实现必须通过子类,使用关键字implements, 而且接口可以多实现(多继承)
一个子类可以同时继承抽象和实现接口
一个接口不能继承一个抽象类,但可以通过extends关键字同时继承多个接口,实现接口的多继承

interface Inter1 {
    public static final int AGE = 100;    // 全局常量
    public abstract void tell();          // 公共的抽象方法
}

interface Inter2 {
    public abstract void say();
}

abstract class Abs1 {
    public abstract void print();
}

// 一个子类可以同时继承抽象类和实现接口
class A extends Abs1 implements Inter1,Inter2 {
    public void tell(){

    }
    public void say() {

    }
    public void print() {

    }
}

interface Inter3 extends Inter1,Inter2 {
    // 实现了接口的多继承
}

public class InterfaceDemo {
    public static void main(String[] args) {
        A a = new A();
        a.print();
    }
}

  1. 多态性的体现:方法的重载和重写;对象的多态性
    对象的多态性:向上转型,程序会自动完成
    父类 父类对象 = 子类实例
    向下转型, 强制类型转换
    子类 子类对象 = (子类)父类实例
  2. instanceof 关键字: 判断一个对象到底是不是一个类的实例,布尔型
  3. 泛型(generic):JDK1.5之后新加的功能
    泛型可以解决数据类型的安全性问题,在类声明的时候,通过一个标识表示类中某个属性的类型,或者是某个方法的返回值及参数类型
    格式:
    访问权限 class 类名称<泛型,泛型…> {
    属性
    方法
    }
    对象的创建: 类名称<具体类型> 对象名称 = new 类名称<具体类型>();
  4. 泛型接口:声明泛型接口和声明泛型类的语法类似,也是在接口名称后边加<T>
    格式: interface 接口名称<泛型标识> {}
  5. 泛型方法:泛型方法中可以定义泛型参数,此时参数的类型就是传入数据类型
    格式: 访问权限 <泛型标识> 泛型标识 方法名称(泛型标识 参数名称)
    private <T>T tell(T t)
  6. 泛型数组:在使用泛型方法时,也可以传递或者返回一个泛型数组
    格式: public static <T>void tell(T arr[]) {}

相关文章

  • Java面试题基础知识篇

    1Java 基础知识面向对象→ 什么是面向对象面向对象、面向过程 略面向对象的三大基本特征和五大基本原则答java...

  • 2022-03-28 Java基础知识(22)- Java 面向

    本文上接 "Java基础知识(11)- Java 面向对象(三)[https://www.cnblogs.com/...

  • Java-Review-Note——1.Java基础知识

    Java-Review-Note——1.Java基础知识 标签: JavaStudy 1.面向过程与面向对象的对比...

  • 【Java基础】Java面试基础知识Q&A(上)

    Java面试基础知识Q&A(上) 面向对象编程( OOP) Java 是一个支持并发、基于类和面向对象的计算机编程...

  • java SE目录

    java SE目录 java基础(一)java基础(二)关键字面向对象(一)面向对象(二)面向对象(三)集合(一)...

  • java总结

    Java是一门面向对象编程语言. java知识点梳理 java面向对象的特点java面向对象的三个基本特性: 封...

  • 面向对象三大特性(一):封装

    面向对象有三大特性:封装、继承和多态。注意,是面向对象的三大特性而不是Java的三大特性,Java只是面向对象语言...

  • Java面向对象 基础知识(三)

    抽象类:包含一个抽象方法的类就是抽象类抽象方法:用abstract关键字声明,而未被实现的方法抽象类不能实例化,必...

  • 原来还可以这样的优秀(一)

    一、JAVA基础知识 1.1、面向对象的特征:抽象、继承、封装、多态 [if !supportLists]1)[e...

  • java基础

    基础知识 1、面向对象三大特点:封装、继承、多态。 2、Java规范:包==文件夹,所有单词字母均小写,规则:<域...

网友评论

      本文标题:Java面向对象 基础知识(三)

      本文链接:https://www.haomeiwen.com/subject/nnurpftx.html