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要设置类成员访问级别?其原因也很简单,就是为了面向对象的封装特性:将类成员使用不同的访问级别控制 ...
随机推荐
- nodepad++通过正则表达式,删除带有特殊字符的某一行
我是VS项目不小心生成了x64平台的sln文件,想把sln文件中带有x64的给删除,一共搜索到500多行,怎么办呢,一个一个删除太费劲儿了. 通过nodepad++ 的正则表达式替换: 我是想删除带X ...
- memcached php-memcache 扩展
1.安装 libevent wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz tar ...
- oracle 函数 WMSYS.WM_CONCAT 与对应 mysql 函数GROUP_CONCAT的用法
1.oracle函数 WMSYS.WM_CONCAT的使用 如图,将图1的结果变成图2的结果,使用函数 WMSYS.WM_CONCAT 即可. 查询语句需要配合使用group by select aa ...
- API 网关
使用 API 网关 链接:https://github.com/oopsguy/microservices-from-design-to-deployment-chinese译者:Oopsguy ...
- MongoDB删除文档
db.collection.deleteOne() 删除单个文档db.collection.deleteMany() 删除多个文档db.collection.remove() 删除单/多个文档,db. ...
- mac zsh 快捷定位文件
brew install zsh vim ~/.zshrc plugins=(git autojump zsh-autosuggestions zsh-syntax-highlighting yarn ...
- protected internal 和internal 区别
private:只能在本类中使用protected:在本类中及其子类中可以使用 可以跨程序集 internal:同一命名空间(程序集)中的类可以使用 限定的是只有在同一个程序集中才可以访问,可以跨 ...
- webpack-cli解决办法
错误信息:Error Cannot find module 'webpack-cli 出现这个错误的原因是因为只全局安装了webpack,没有安装对应的webpack-cli.再打包时是需要webpa ...
- 使用GraphViz画caffe网络结构图
参考http://blog.csdn.net/happynear/article/details/45440709 1. 安装pydot: sudo pip install pydot 2. 安装Gr ...
- spring注入bean的三种方法
在Spring的世界中, 我们通常会利用bean config file 或者 annotation注解方式来配置bean. 在第一种利用bean config file(spring xml)方式中 ...