JAVA基础 - 类的构造与实例化
一个简单的demo,主要运用:
- 抽象类,类的继承
- 类的实例化,构造函数
- @Override重写父类方法
package week4;
abstract class Person {
void showFullName() {
System.out.print("Person");
}
}
class People extends Person{
int age;
final String name;
People (int age, String name){
this.age = age;
this.name = name;
}
public void setAge(int age) {
this.age = age;
}
public int getAge() {
return this.age;
}
public String getName() {
return this.name;
}
public void showFullName() {
System.out.println(this.name);
}
}
class Student extends People {
final int stuId;
static int peopleType = 1;
Student (int age, String name, int stuId){
super(age,name);
this.stuId = stuId;
}
public int getId() {
return this.stuId;
}
@Override
public void showFullName() {
System.out.println("Student:"+this.name);
}
}
class Book {
final int bookId;
int bookStatus;
int bookPeopleType;
int bookPeopleId;
Book (int bookId){
this.bookId = bookId;
bookStatus = 1;
bookPeopleType = 0;
bookPeopleId = 0;
}
void borrowBook(Student a) {
this.bookStatus = 0;
this.bookPeopleType = Student.peopleType;
this.bookPeopleId = a.stuId;
System.out.println(a.name+" Borrows "+this.bookId+" Successful!");
}
void returnBook() {
this.bookStatus = 1;
this.bookPeopleType = 0;
this.bookPeopleId = 0;
System.out.println(this.bookId+" has been returned!");
}
void showStatus() {
if(this.bookStatus == 0) {
System.out.println("The book has been borrowed!");
}else {
System.out.println("You can borrow it now!");
}
}
}
public class Week4 {
static Book book1 = new Book(123);
static Book book2 = new Book(124);
static Student stu1 = new Student(20,"Tom",20180001);
static Student stu2 = new Student(19,"John",20180201);
public static void main(String[] args) {
//Show information about stu1
stu1.showFullName();
System.out.println(stu2.name);
//Borrow a book
book1.showStatus();
book1.borrowBook(stu1);
book1.showStatus();
System.out.println(book1.bookPeopleId);
//return the book
book1.returnBook();
book1.showStatus();
}
}
JAVA基础 - 类的构造与实例化的更多相关文章
- 第31节:Java基础-类与对象
前言 Java基础-类与对象,方法的重载,构造方法的重载,static关键字,main()方法,this关键字,包,访问权限,类的继承,继承性,方法的重写,super变量. 方法的重载:成员方法的重载 ...
- 【Demo 0004】Java基础-类封装性
本章学习要点: 1. Java封装特性; 2. 掌握类的定义: 3. 掌握类的调用方法; 一.封装特性 Java 纯面向对象语言,面向对象语言遵 ...
- JAVA基础——类和对象
java类与对象学习笔记 一.成员变量和局部变量 (1)定义 1.成员变量 在类中定义,用来描述对象将要有什么.(默认的成员变量值为0) 2.局部变量 在类的方法中定义,在方法中临时保存数据. 演示示 ...
- Java 基础-类与面向对象
类 Object 类(java.lang.Object)是所有 Java 类的直接或间接父类. 成员方法及变长参数 方法定义: [public | protected | private] [stat ...
- 【Demo 0005】Java基础-类继承性
本章学习要点: 1. 了解Java继承特性; 2. 掌握继承实现方法; 3. 掌握override规则: 一.类继承特性 1. 继承定义:使用己 ...
- java基础---类和对象(4)
一. static关键字 使用static关键字修饰成员变量表示静态的含义,此时成员变量由对象层级提升为类层级,整个类共享一份静态成员变量,该成员变量随着类的加载准备就绪,与是否创建对象无关 使用st ...
- Java基础-类和对象
类和对象 对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为.例如,一条狗是一个对象,它的状态有:颜色.名字.品种:行为有:摇尾巴.叫.吃等. 类:类是一个模板,它描述一类对象的行为和状态. ...
- Java基础—类和对象
基本概念 对象:对象是类的一个实例,有状态和行为.例如,一条狗是一个对象,它的状态有:颜色.名字.品种:行为有:摇尾巴.叫.吃等. 类:类是具有相同属性和方法的一组对象的集合,它为属于该类的所有对象提 ...
- java基础-类成员访问权限控制
一 前言 这篇文章是很基础的一文,没多大深度,对于开发人员必然是熟练于心.本篇文章的主题是为什么java要设置类成员访问级别?其原因也很简单,就是为了面向对象的封装特性:将类成员使用不同的访问级别控制 ...
随机推荐
- percona toolkit之slave工具
1:pt-slave-find ,主要是查找MySQL的层级,其实我感觉这个用处不是很大,因为层级比较多架构本身就很少,查看从库的话一般情况我们可以通过show slave hosts查看(不过不能显 ...
- The FLARE On Challenge
上周才开始做这个CTF,用一周左右的时间完成了全部7道题.算是为即将到来的找工作进行热身和学习,下面记录一下遇到的问题和学到的东西,具体的解题过程就不详细描述了. challenge1 这道题用IDA ...
- 设计模式:Builder模式
设计模式:Builder模式 一.前言 今天我们讨论一下Builder建造者模式,这个Builder,其实和模板模式非常的像,但是也有区别,那就是在模板模式中父类对子类中的实现进行操作,在父类之 ...
- Exchange 2016系统要求
一.支持的共存方案 下表列出了一些支持 Exchange 2016 与 Exchange 早期版本共存的应用场景. Exchange 2016与Exchange Server早期版本共存 Exchan ...
- SIMATIC 1500 PLC 同步轴,状态字StatusWord信号描述
轴名. StatusWord.X21 (Synchronizing) 正在建立同步 轴名. StatusWord.X22 (Synchronous) 已经建立同步
- ZT 苍天助曹不助汉哪
诸葛亮能夜观星象,但为什么在上方谷一役中,孔明没有测出突如其来的大雨,却高呼“苍天助曹不助汉哪”断送了自己的性命,这是为什么 谋事在人,成事在天. 雁过留影 3级 2011-04-18 天命不可违 ...
- HBuilde H5开发,关于JSON的Storage存储
今天踩坑了,在这里记一下. 我想做一个列表,开始是一个一个复制粘贴,然后发现这样太不灵活了,如果我有更多内容要填难道还要再一个一个复制吗? 所以我想到直接用JS动态生成最好,我的思路是这样的: //首 ...
- 021logging模块
##importlogging logging.debug('debug message')logging.info('info message')logging.warning('warning ...
- ubuntu16.4安装php7+apache2+mysql环境全过程记录
1.安装apache2 sudo apt-get install apache2 2.安装php7 sudo apt-get install php7.0 3.apache 识别php插件(不是必须, ...
- POJ-1284 Primitive Roots---原根&欧拉函数
题目链接: https://cn.vjudge.net/problem/POJ-1284 题目大意: 就是给出一个奇素数,求出他的原根的个数. 解题思路: 由于是m是奇素数,m的欧拉函数值为m - 1 ...