提供结构丰富的Person类

简介: 提供结构丰富的Person类

总结于尚硅谷学习视频

视频链接

https://b23.tv/lbJH6p

代码

Creature类

package com.day0324_1;
import java.io.Serializable;
public class Creature<T> implements Serializable {
    private char gender;
    public double weight;
    private void breath(){
        System.out.println("生物呼吸");
    }
    public void eat(){
        System.out.println("生物吃东西");
    }
}

myAnnotation注解

package com.day0324_1;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.*;
@Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
@Retention(RetentionPolicy.RUNTIME)
public @interface myAnnotation {
    String value() default "hello";
}

MyInterface接口

package com.day0324_1;
public interface MyInterface {
    void info();
}

Person类

package com.day0324_1;
@myAnnotation(value = "hi")
public class Person extends Creature<String> implements Comparable<String>,MyInterface {
    private String name;
    int age;
    public int id;
    public Person(){
    }
    @myAnnotation(value = "abc")
    private Person(String name){
        this.name=name;
    }
    Person(String name,int age){
        this.name=name;
        this.age=age;
    }
    @myAnnotation
    private String show(String nation){
        System.out.println("我的国籍是:"+nation);
        return nation;
    }
    public String display(String interest,int age)throws NullPointerException,ClassCastException{
        return interest+age;
    }
    @Override
    public void info() {
        System.out.println("我是一个人");
    }
    @Override
    public int compareTo(String o) {
        return 0;
    }
    private static void showDesc(){
        System.out.println("我是一个可爱的人");
    }
    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", id=" + id +
                '}';
    }
}
相关文章
|
5月前
|
编译器 C语言 C++
类和对象 | 类的引入、struct&class的区别、类的定义
类和对象 | 类的引入、struct&class的区别、类的定义
39 7
|
8月前
|
C#
c# 所有类的最终基类:Object
c# 所有类的最终基类:Object
71 0
|
8月前
mongoTemplate 嵌套对象包含id
mongoTemplate 嵌套对象包含id
71 0
|
8月前
|
C#
C#学习相关系列之数据类型类----嵌套类和嵌套方法(三)
C#学习相关系列之数据类型类----嵌套类和嵌套方法(三)
|
fastjson
Map对象与实体类Object对象转换
Map对象与实体类Object对象转换
|
Java
定义Student类
定义Student类
150 0
|
编译器 C语言 C++
C++ 之什么是类 & 对象的关系?
C++ 之什么是类 & 对象的关系?
|
C语言 C++
习题10.3 分别定义Teacher类和Cadre类,采用多重继承方式由这两个类派生出新类Teacher_Cadre类。
习题10.3 分别定义Teacher类和Cadre类,采用多重继承方式由这两个类派生出新类Teacher_Cadre类。
|
C语言 C++
继承与派生(1)·定义一个基类Person,它有3个protected的数据成员:姓名、性别、年龄
继承与派生(1)·定义一个基类Person,它有3个protected的数据成员:姓名、性别、年龄
|
Python
Python面向对象、类的抽象、类的定义、类名遵循大驼峰的命名规范创建对象、类外部添加和获取对象属性、类内部操作属性魔法方法__init__()__str__()__del__()__repr__()
面向对象和面向过程,是两种编程思想. 编程思想是指对待同一个问题,解决问题的套路方式.面向过程: 注重的过程,实现的细节.亲力亲为.面向对象: 关注的是结果, 偷懒.类和对象,是面向对象中非常重要的两个概念object 是所有的类基类,即最初始的类class 类名(object): 类中的代码PEP8代码规范:类定义的前后,需要两个空行 创建的对象地址值都不一样如dog和dog1的地址就不一样,dog的地址为2378043254528dog1的地址为2378044849840 8.类内部操作属性 sel
276 1
Python面向对象、类的抽象、类的定义、类名遵循大驼峰的命名规范创建对象、类外部添加和获取对象属性、类内部操作属性魔法方法__init__()__str__()__del__()__repr__()