Task 1 — Классы и объекты
Базовое проектирование классов и создание экземпляров.
Редактировать источникЗадание
Базовое проектирование классов и создание экземпляров. Документация собрана по исходному коду этой практики.
Решение
Полный код решения по этой практике:
Исходные файлы решения
Task1/Ball.javaTask1/Book.javaTask1/Dog.javaTask1/TestBall.javaTask1/TestBook.javaTask1/TestDog.java
Task1/Ball.java
package Task1;
import java.util.Scanner;
public class Ball {
private String colour;
private int rad;
public Ball(String n, int a){
colour = n;
rad = a;
}
public Ball(String n){
colour = n;
rad = 0;
}
public Ball(){
colour = "red";
rad = 0;
}
public void setRad(int rad) {
this.rad = rad;
}
public void setColour(String colour) {
this.colour = colour;
}
public String getColour() {
return colour;
}
public int getRad() {
return rad;
}
public String toString(){
return this.colour+"'s radius "+rad;
}
public void initSystem() {
Scanner scanner = new Scanner(System.in);
String input;
input = scanner.next();
//System.out.println(input);
Scanner scan = new Scanner(System.in);
String in;
in = scan.next();
System.out.println(input+"'s radius "+in);
}
}
Task1/Book.java
package Task1;
public class Book {
private String name;
private int number;
public Book(String n, int a){
name = n;
number = a;
}
public Book(String n){
name = n;
number = 0;
}
public Book(){
name = "leon";
number = 0;
}
public void setNumber(int number){
this.number = number;
}
public void setName(String name){
this.name = name;
}
public String getName(String name){
return name;
}
public int getNumber(){
return number;
}
public String toString(){
return this.name+" number str "+number;
}
}
Task1/Dog.java
package Task1;
public class Dog {
private String name;
private int age;
public Dog(String n, int a){
name = n;
age = a;
}
public Dog(String n){
name = n;
age = 0;
}
public Dog(){
name = "Pup";
age = 0;
}
public void setAge(int age){
this.age = age;
}
public void setName(String name) {
this.name = name;
}
public String getName(String name){
return name;
}
public int getAge() {
return age;
}
public String toString(){
return this.name+", age "+this.age;
}
public void intoHumanAge(){
System.out.println(name+"'s age in human years is "+age*7+" years");
}
}
Task1/TestBall.java
package Task1;
public class TestBall {
public static void main(String[] args){
Ball b1 = new Ball("yellow", 17);
Ball b2 = new Ball("black", 44);
Ball b3 = new Ball("green"); b3.setRad(78);
b3.initSystem();
System.out.println(b1.toString());
System.out.println(b2.toString());
System.out.println(b3.toString());
}
}
Task1/TestBook.java
package Task1;
public class TestBook {
public static void main(String[] args){
Book b1 = new Book("lord", 123);
Book b2 = new Book("res", 34);
Book b3 = new Book("got"); b3.setNumber(78);
System.out.println(b1);
System.out.println(b2);
System.out.println(b3);
}
}
Task1/TestDog.java
package Task1;
public class TestDog {
public static void main(String[] args){
Dog d1 = new Dog("Mike", 2);
Dog d2 = new Dog("Helen", 7);
Dog d3 = new Dog("Bob"); d3.setAge(1);
System.out.println(d1);
d1.intoHumanAge();
d2.intoHumanAge();
d3.intoHumanAge();
}
}
Описание
В этом модуле используется 6 Java-файлов. Ключевые сущности: Ball, Book, Dog, TestBall, TestBook, TestDog.
tip
Для проверки практики сначала запускайте тестовый/демо-класс из папки задачи, затем расширяйте модель новыми кейсами.
Вывод
Task 1 — Классы и объекты документирует реальное решение из исходного кода.