Initial commit: simple OOP project in Java;
This commit is contained in:
commit
27cf59e60c
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17">
|
||||
<attributes>
|
||||
<attribute name="module" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
|
@ -0,0 +1 @@
|
|||
bin
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>TestJava</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
|
@ -0,0 +1,2 @@
|
|||
eclipse.preferences.version=1
|
||||
encoding/<project>=UTF-8
|
|
@ -0,0 +1,14 @@
|
|||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
|
||||
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
|
||||
org.eclipse.jdt.core.compiler.compliance=17
|
||||
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
|
||||
org.eclipse.jdt.core.compiler.debug.localVariable=generate
|
||||
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
|
||||
org.eclipse.jdt.core.compiler.release=enabled
|
||||
org.eclipse.jdt.core.compiler.source=17
|
|
@ -0,0 +1,9 @@
|
|||
/**
|
||||
*
|
||||
*/
|
||||
/**
|
||||
* @author ahypki
|
||||
*
|
||||
*/
|
||||
module TestJava {
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package net.hypki.testjava.figures;
|
||||
|
||||
public class Circle extends Figure {
|
||||
|
||||
private double radius;
|
||||
|
||||
public Circle() {
|
||||
super("Circle");
|
||||
}
|
||||
|
||||
public Circle(double radius) {
|
||||
super("Circle");
|
||||
setRadius(radius);
|
||||
}
|
||||
|
||||
@Override
|
||||
public double computeArea() {
|
||||
return Math.PI * getRadius() * getRadius();
|
||||
}
|
||||
|
||||
public double getRadius() {
|
||||
return radius;
|
||||
}
|
||||
|
||||
public void setRadius(double radius) {
|
||||
this.radius = radius;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
package net.hypki.testjava.figures;
|
||||
|
||||
public abstract class Figure {
|
||||
|
||||
private int id = -1;
|
||||
|
||||
private String name;
|
||||
|
||||
public abstract double computeArea();
|
||||
|
||||
public Figure() {
|
||||
setName("Figure");
|
||||
}
|
||||
|
||||
public Figure(String name) {
|
||||
setName(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return getName() + " with ID = " + getId()
|
||||
+ " has area " + computeArea();
|
||||
}
|
||||
|
||||
public void setId(int id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public int getId() {
|
||||
return this.id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
package net.hypki.testjava.figures;
|
||||
|
||||
public class Rectangle extends Square {
|
||||
|
||||
private double y;
|
||||
|
||||
/**
|
||||
* Default constructor
|
||||
*/
|
||||
public Rectangle() {
|
||||
super("Rectangle");
|
||||
}
|
||||
|
||||
/**
|
||||
* Constructor with 2 params.
|
||||
* @param x - width
|
||||
* @param y - length
|
||||
*/
|
||||
public Rectangle(double x, double y) {
|
||||
super("Rectangle");
|
||||
setX(x);
|
||||
setY(y);
|
||||
}
|
||||
|
||||
@Override
|
||||
public double computeArea() {
|
||||
return getX() * getY();
|
||||
}
|
||||
|
||||
public double getY() {
|
||||
return y;
|
||||
}
|
||||
|
||||
public void setY(double y) {
|
||||
this.y = y;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
package net.hypki.testjava.figures;
|
||||
|
||||
public class Square extends Figure {
|
||||
|
||||
private double x;
|
||||
|
||||
public Square() {
|
||||
setName("Square");
|
||||
}
|
||||
|
||||
public Square(String name) {
|
||||
setName(name);
|
||||
}
|
||||
|
||||
@Override
|
||||
public double computeArea() {
|
||||
return getX() * getX();
|
||||
}
|
||||
|
||||
public double getX() {
|
||||
return x;
|
||||
}
|
||||
|
||||
public void setX(double x) {
|
||||
this.x = x;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
package net.hypki.testjava.main;
|
||||
|
||||
import net.hypki.testjava.figures.Circle;
|
||||
import net.hypki.testjava.figures.Figure;
|
||||
import net.hypki.testjava.figures.Rectangle;
|
||||
import net.hypki.testjava.figures.Square;
|
||||
|
||||
public class Main {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
Square sq = new Square();
|
||||
sq.setId(5);
|
||||
sq.setX(12);
|
||||
System.out.println(sq);
|
||||
|
||||
Rectangle rec = new Rectangle();
|
||||
rec.setX(10);
|
||||
rec.setY(5);
|
||||
System.out.println(rec);
|
||||
|
||||
Rectangle rec2 = new Rectangle(10, 5);
|
||||
System.out.println(rec2);
|
||||
|
||||
Circle c = new Circle(3);
|
||||
System.out.println(c);
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue