From 5e5001a462916fda66fda8996e0fe85f73779a76 Mon Sep 17 00:00:00 2001 From: crupest <crupest@outlook.com> Date: Wed, 14 Apr 2021 09:20:56 +0800 Subject: import(life): Add java practice. --- works/life/java-practice/.gitignore | 60 +++++++++++ works/life/java-practice/javatest/.classpath | 10 ++ works/life/java-practice/javatest/.project | 17 +++ .../javatest/src/javatest/ArrayDemo2.java | 13 +++ .../javatest/src/javatest/ArrayDemo3.java | 31 ++++++ .../java-practice/javatest/src/javatest/E0201.java | 21 ++++ .../java-practice/javatest/src/javatest/E0202.java | 12 +++ .../java-practice/javatest/src/javatest/E0203.java | 26 +++++ .../java-practice/javatest/src/javatest/E0204.java | 90 ++++++++++++++++ .../java-practice/javatest/src/javatest/Main.java | 7 ++ .../javatest/src/javatest/MethodDemo2.java | 30 ++++++ .../javatest/src/javatest/e0301/Circle.java | 33 ++++++ .../javatest/src/javatest/e0302/Rational.java | 45 ++++++++ .../src/javatest/e0302/TestRationalClass.java | 12 +++ .../javatest/src/javatest/e0401/Program.java | 72 +++++++++++++ .../javatest/src/javatest/e0402/Person.java | 40 +++++++ .../javatest/src/javatest/p0301/AreaAndLength.java | 120 +++++++++++++++++++++ .../javatest/src/javatest/p0302/Example.java | 47 ++++++++ .../javatest/src/javatest/p0303/SunRise.java | 12 +++ .../src/javatest/p0303/sub/SquareEquation.java | 46 ++++++++ .../javatest/src/javatest/p0401/Example.java | 113 +++++++++++++++++++ .../javatest/src/javatest/p0402/Subroutine.java | 23 ++++ .../javatest/src/javatest/p0403/Parallelogram.java | 31 ++++++ .../javatest/src/javatest/p0404/Quadrangle.java | 36 +++++++ 24 files changed, 947 insertions(+) create mode 100644 works/life/java-practice/.gitignore create mode 100644 works/life/java-practice/javatest/.classpath create mode 100644 works/life/java-practice/javatest/.project create mode 100644 works/life/java-practice/javatest/src/javatest/ArrayDemo2.java create mode 100644 works/life/java-practice/javatest/src/javatest/ArrayDemo3.java create mode 100644 works/life/java-practice/javatest/src/javatest/E0201.java create mode 100644 works/life/java-practice/javatest/src/javatest/E0202.java create mode 100644 works/life/java-practice/javatest/src/javatest/E0203.java create mode 100644 works/life/java-practice/javatest/src/javatest/E0204.java create mode 100644 works/life/java-practice/javatest/src/javatest/Main.java create mode 100644 works/life/java-practice/javatest/src/javatest/MethodDemo2.java create mode 100644 works/life/java-practice/javatest/src/javatest/e0301/Circle.java create mode 100644 works/life/java-practice/javatest/src/javatest/e0302/Rational.java create mode 100644 works/life/java-practice/javatest/src/javatest/e0302/TestRationalClass.java create mode 100644 works/life/java-practice/javatest/src/javatest/e0401/Program.java create mode 100644 works/life/java-practice/javatest/src/javatest/e0402/Person.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0301/AreaAndLength.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0302/Example.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0303/SunRise.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0303/sub/SquareEquation.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0401/Example.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0402/Subroutine.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0403/Parallelogram.java create mode 100644 works/life/java-practice/javatest/src/javatest/p0404/Quadrangle.java (limited to 'works') diff --git a/works/life/java-practice/.gitignore b/works/life/java-practice/.gitignore new file mode 100644 index 0000000..acec74a --- /dev/null +++ b/works/life/java-practice/.gitignore @@ -0,0 +1,60 @@ +.metadata +bin/ +tmp/ +*.tmp +*.bak +*.swp +*~.nib +local.properties +.settings/ +.loadpath +.recommenders + +# External tool builders +.externalToolBuilders/ + +# Locally stored "Eclipse launch configurations" +*.launch + +# PyDev specific (Python IDE for Eclipse) +*.pydevproject + +# CDT-specific (C/C++ Development Tooling) +.cproject + +# CDT- autotools +.autotools + +# Java annotation processor (APT) +.factorypath + +# PDT-specific (PHP Development Tools) +.buildpath + +# sbteclipse plugin +.target + +# Tern plugin +.tern-project + +# TeXlipse plugin +.texlipse + +# STS (Spring Tool Suite) +.springBeans + +# Code Recommenders +.recommenders/ + +# Annotation Processing +.apt_generated/ +.apt_generated_test/ + +# Scala IDE specific (Scala & Java development for Eclipse) +.cache-main +.scala_dependencies +.worksheet + +# Uncomment this line if you wish to ignore the project description file. +# Typically, this file would be tracked if it contains build/dependency configurations: +#.project diff --git a/works/life/java-practice/javatest/.classpath b/works/life/java-practice/javatest/.classpath new file mode 100644 index 0000000..6bf1eac --- /dev/null +++ b/works/life/java-practice/javatest/.classpath @@ -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-15"> + <attributes> + <attribute name="module" value="true"/> + </attributes> + </classpathentry> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/works/life/java-practice/javatest/.project b/works/life/java-practice/javatest/.project new file mode 100644 index 0000000..34df9f4 --- /dev/null +++ b/works/life/java-practice/javatest/.project @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>javatest</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> diff --git a/works/life/java-practice/javatest/src/javatest/ArrayDemo2.java b/works/life/java-practice/javatest/src/javatest/ArrayDemo2.java new file mode 100644 index 0000000..8d7b2ae --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/ArrayDemo2.java @@ -0,0 +1,13 @@ +package javatest; + +public class ArrayDemo2 { + public static void main(String args[]) { + int score[][] = { { 10, 3 }, { -1, 119, -51 }, { 100, 56, 90, 49 } }; + for (int i = 0; i < score.length; i++) { + for (int j = 0; j < score[i].length; j++) { + System.out.print(score[i][j] + "\t"); + } + System.out.println(""); + } + } +} diff --git a/works/life/java-practice/javatest/src/javatest/ArrayDemo3.java b/works/life/java-practice/javatest/src/javatest/ArrayDemo3.java new file mode 100644 index 0000000..f053b4b --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/ArrayDemo3.java @@ -0,0 +1,31 @@ +package javatest; + +public class ArrayDemo3 { + public static void main(String args[]) { + int score[] = { 25, 78, 35, 84, 69, 74, 12, 56 }; + int age[] = { 32, 52, 12, 63, 42, 15, 75, 23, 56 }; + sort(score); // �������� + print(score); // ����������� + System.out.println("\n-----------------------------------------"); + sort(age); + print(age); + } + + public static void sort(int temp[]) { // �������� + for (int i = 1; i < temp.length; i++) { // ð���㷨 + for (int j = 0; j < temp.length; j++) { + if (temp[i] < temp[j]) { + int x = temp[i]; + temp[i] = temp[j]; + temp[j] = x; + } + } + } + } + + public static void print(int x[]) { // ������� + for (int i = 0; i < x.length; i++) { + System.out.print(x[i] + " , "); + } + } +} diff --git a/works/life/java-practice/javatest/src/javatest/E0201.java b/works/life/java-practice/javatest/src/javatest/E0201.java new file mode 100644 index 0000000..5cda62a --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/E0201.java @@ -0,0 +1,21 @@ +package javatest; + +public class E0201 { + public static int max(int a, int b) { + return a > b ? a : b; + } + + public static double max(double a, double b) { + return a > b ? a : b; + } + + public static int max(int a, int b, int c) { + return max(a, max(b, c)); + } + + public static void main(String[] args) { + System.out.println(max(1, 2)); + System.out.println(max(2.2, 3.3)); + System.out.println(max(1, 2, 3)); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/E0202.java b/works/life/java-practice/javatest/src/javatest/E0202.java new file mode 100644 index 0000000..c74beec --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/E0202.java @@ -0,0 +1,12 @@ +package javatest; + +public class E0202 { + public static int F(int n) { + if (n == 1 || n == 2) return 1; + return F(n - 2) + F(n - 1); + } + + public static void main(String[] args) { + System.out.println(F(6)); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/E0203.java b/works/life/java-practice/javatest/src/javatest/E0203.java new file mode 100644 index 0000000..7bec46f --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/E0203.java @@ -0,0 +1,26 @@ +package javatest; + +public class E0203 { + public static void main(String[] args) { + int[] array = new int[] { 1, 2, 3, 4 }; + intArray.printArray(array); + System.out.println(); + intArray.printArray(intArray.reverse(array)); + } +} + +class intArray { + public static void printArray(int[] array) { + for (int i = 0; i < array.length; i++) { + System.out.print(array[i] + " "); + } + } + + public static int[] reverse(int[] list) { + int[] result = new int[list.length]; + for (int i = 0; i < list.length; i++) { + result[i] = list[list.length - i - 1]; + } + return result; + } +} diff --git a/works/life/java-practice/javatest/src/javatest/E0204.java b/works/life/java-practice/javatest/src/javatest/E0204.java new file mode 100644 index 0000000..c79e33c --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/E0204.java @@ -0,0 +1,90 @@ +package javatest; + +import java.util.HashSet; +import java.util.Random; + +public class E0204 { + public static void main(String[] args) { + Random r = new Random(); + HashSet<Card> set = new HashSet<Card>(); + + while (set.size() != 4) { + set.add(Card.random(r)); + } + + for (Card card : set) { + System.out.println(card); + } + } +} + +class Card { + public static final String[] suits = { "Spades", "Hearts", "Clubs", "Diamonds" }; + public static final String[] ranks = { "Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", + "King" }; + + public static Card random(Random r) { + return new Card(suits[r.nextInt(suits.length)], ranks[r.nextInt(ranks.length)]); + } + + public Card(String suit, String rank) { + super(); + this.suit = suit; + this.rank = rank; + } + + private String suit; + private String rank; + + public String getSuit() { + return suit; + } + + public void setSuit(String suit) { + this.suit = suit; + } + + public String getRank() { + return rank; + } + + public void setRank(String rank) { + this.rank = rank; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((rank == null) ? 0 : rank.hashCode()); + result = prime * result + ((suit == null) ? 0 : suit.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Card other = (Card) obj; + if (rank == null) { + if (other.rank != null) + return false; + } else if (!rank.equals(other.rank)) + return false; + if (suit == null) { + if (other.suit != null) + return false; + } else if (!suit.equals(other.suit)) + return false; + return true; + } + + @Override + public String toString() { + return "Card [suit=" + suit + ", rank=" + rank + "]"; + } +} diff --git a/works/life/java-practice/javatest/src/javatest/Main.java b/works/life/java-practice/javatest/src/javatest/Main.java new file mode 100644 index 0000000..4c4a70c --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/Main.java @@ -0,0 +1,7 @@ +package javatest; + +public class Main { + public static void main(String[] args) { + System.out.println("Hello world!"); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/MethodDemo2.java b/works/life/java-practice/javatest/src/javatest/MethodDemo2.java new file mode 100644 index 0000000..161de5d --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/MethodDemo2.java @@ -0,0 +1,30 @@ +package javatest; + +public class MethodDemo2 { + public static void main(String args[]) { + int one = add(29, 58); // ����addOne()���� + int three = add(25, 58, 10); // ����addOne()���� + float two = add(26.35f, -12.84f); // ����addTwo()���� + System.out.println("add(int x,int y)=" + one); + System.out.println("add(int x,int y,int z)=" + three); + System.out.println("add(float x,float y)=" + two); + } + + public static int add(int x, int y) { // ���巽�������������ӷ�������һ���������� + int temp = 0; // tempΪ�ֲ�������ֻ�ڴ˷�������Ч + temp = x + y; + return temp; // ���ؼ����� + } + + public static int add(int x, int y, int z) { // ���巽�������������ӷ�������һ���������� + int temp = 0; // tempΪ�ֲ�������ֻ�ڴ˷�������Ч + temp = x + y + z; + return temp; // ���ؼ����� + } + + public static float add(float x, float y) { + float temp = 0; + temp = x + y; + return temp; + } +} diff --git a/works/life/java-practice/javatest/src/javatest/e0301/Circle.java b/works/life/java-practice/javatest/src/javatest/e0301/Circle.java new file mode 100644 index 0000000..ec380ec --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/e0301/Circle.java @@ -0,0 +1,33 @@ +package javatest.e0301; + +public class Circle { + private static int numOfObjects = 0; + + public static int getNumOfObjects() { + return numOfObjects; + } + + private double radius; + + public Circle(double radius) { + this.radius = radius; + numOfObjects++; + } + + public double getArea() { + return radius * radius * Math.PI; + } + + public static void printCircle(Circle c) { + System.out.println("Radius of circle is " + c.radius); + System.out.println("Area of circle is " + c.getArea()); + } + + public static void main(String[] args) { + Circle c1 = new Circle(2); + Circle c2 = new Circle(3); + Circle.printCircle(c1); + Circle.printCircle(c2); + System.out.println("Num of objects is " + Circle.getNumOfObjects()); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/e0302/Rational.java b/works/life/java-practice/javatest/src/javatest/e0302/Rational.java new file mode 100644 index 0000000..772cf12 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/e0302/Rational.java @@ -0,0 +1,45 @@ +package javatest.e0302; + +public class Rational { + private long numerator; + private long denominator; + + private static long gcd(long a, long b) { + return b != 0 ? gcd(b, a % b) : a; + } + + public Rational(long numerator, long denominator) { + long d = gcd(numerator, denominator); + this.numerator = numerator / d; + this.denominator = denominator / d; + } + + public Rational add(Rational secondRational) { + long d = gcd(this.denominator, secondRational.denominator); + long dd = this.denominator / d * secondRational.denominator; + long a = this.numerator * (dd / this.denominator); + long b = secondRational.numerator * (dd / secondRational.denominator); + return new Rational(a + b, dd); + } + + public Rational subtract(Rational secondRational) { + long d = gcd(this.denominator, secondRational.denominator); + long dd = this.denominator / d * secondRational.denominator; + long a = this.numerator * (dd / this.denominator); + long b = secondRational.numerator * (dd / secondRational.denominator); + return new Rational(a - b, dd); + } + + public Rational multiply(Rational secondRational) { + return new Rational(this.numerator * secondRational.numerator, this.denominator * secondRational.denominator); + } + + public Rational divide(Rational secondRational) { + return new Rational(this.numerator * secondRational.denominator, this.denominator * secondRational.numerator); + } + + @Override + public String toString() { + return denominator == 1 ? Long.toString(numerator) : numerator + "/" + denominator; + } +} diff --git a/works/life/java-practice/javatest/src/javatest/e0302/TestRationalClass.java b/works/life/java-practice/javatest/src/javatest/e0302/TestRationalClass.java new file mode 100644 index 0000000..2be02b9 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/e0302/TestRationalClass.java @@ -0,0 +1,12 @@ +package javatest.e0302; + +public class TestRationalClass { + public static void main(String[] args) { + Rational r1 = new Rational(2, 1); + Rational r2 = new Rational(2, 3); + System.out.println(r1 + " + " + r2 + " = " + r1.add(r2)); + System.out.println(r1 + " - " + r2 + " = " + r1.subtract(r2)); + System.out.println(r1 + " * " + r2 + " = " + r1.multiply(r2)); + System.out.println(r1 + " / " + r2 + " = " + r1.divide(r2)); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/e0401/Program.java b/works/life/java-practice/javatest/src/javatest/e0401/Program.java new file mode 100644 index 0000000..c7472b8 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/e0401/Program.java @@ -0,0 +1,72 @@ +package javatest.e0401; + +public class Program { + public static boolean equalArea(GeometricObject object1, GeometricObject object2) { + return object1.findArea() == object2.findArea(); + } + + public static void displayGeometricObject(GeometricObject object) { + if (object instanceof Circle) { + System.out.println("A Circle."); + } else if (object instanceof Rectangle) { + System.out.println("A Rectangle."); + } + } + + public static void main(String[] args) { + Circle circle = new Circle(3); + Rectangle rectangle = new Rectangle(2, 4); + + System.out.println(equalArea(circle, rectangle)); + displayGeometricObject(circle); + displayGeometricObject(rectangle); + } +} + +abstract class GeometricObject { + protected String color; + + public abstract double findArea(); + + public abstract double findPerimeter(); +} + +class Circle extends GeometricObject { + + private double radius; + + public Circle(double radius) { + this.radius = radius; + } + + @Override + public double findArea() { + return radius * radius * Math.PI; + } + + @Override + public double findPerimeter() { + return radius * 2 * Math.PI; + } +} + +class Rectangle extends GeometricObject { + + private double width; + private double height; + + public Rectangle(double width, double height) { + this.width = width; + this.height = height; + } + + @Override + public double findArea() { + return width * height; + } + + @Override + public double findPerimeter() { + return (width + height) * 2; + } +} diff --git a/works/life/java-practice/javatest/src/javatest/e0402/Person.java b/works/life/java-practice/javatest/src/javatest/e0402/Person.java new file mode 100644 index 0000000..b7e0e14 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/e0402/Person.java @@ -0,0 +1,40 @@ +package javatest.e0402; + +public class Person { + public void cut() { + } + + public static void main(String[] args) { + Person player = new Player(); + Person cooker = new Cooker(); + Person cuter = new Cuter(); + + player.cut(); + cooker.cut(); + cuter.cut(); + } +} + +/** ��Ա */ +class Player extends Person { + /** ��д */ + public void cut() { + System.out.println("ֹͣ��Ϸ"); + } +} + +/** ��ʦ */ +class Cooker extends Person { + /** ��д */ + public void cut() { + System.out.println("��ʼ�в�"); + } +} + +/** ��ʦ */ +class Cuter extends Person { + /** ��д */ + public void cut() { + System.out.println("��ʼ��ͷ��"); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0301/AreaAndLength.java b/works/life/java-practice/javatest/src/javatest/p0301/AreaAndLength.java new file mode 100644 index 0000000..5216fb1 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0301/AreaAndLength.java @@ -0,0 +1,120 @@ +package javatest.p0301; + +class Trangle { + double sideA, sideB, sideC, area, length; + boolean boo; + + public Trangle(double a, double b, double c) { + sideA = a; + sideB = b; + sideC = c;// ����a,b,c�ֱ�ֵ��sideA,sideB,sideC + if (a + b > c && a + c > b && c + b > a) // a,b,c���������ε���������ʽ + { + boo = true; // ��boo��ֵ�� + } else { + boo = false; // ��boo��ֵ�� + } + } + + double getLength() { + if (boo) { + length = sideA + sideB + sideC; + return length; + } else { + System.out.println("����һ��������,���ܼ����ܳ�"); + return 0; + } + // �����壬Ҫ������length��ֵ������ + } + + public double getArea() { + if (boo) { + double p = (sideA + sideB + sideC) / 2.0; + area = Math.sqrt(p * (p - sideA) * (p - sideB) * (p - sideC)); + return area; + } else { + System.out.println("����һ��������,���ܼ������"); + return 0; + } + } + + public void setABC(double a, double b, double c) { + sideA = a; + sideB = b; + sideC = c; // ����a,b,c�ֱ�ֵ��sideA,sideB,sideC + if (a + b > c && a + c > b && c + b > a) // a,b,c���������ε���������ʽ + { + boo = true; // ��boo��ֵ�� + } else { + boo = false; // ��boo��ֵ�� + } + } +} + +class Lader { + double above, bottom, height, area; + + Lader(double a, double b, double h) { + above = a; + bottom = b; + height = h; + // �����壬������a,b,c�ֱ�ֵ��above,bottom,height + } + + double getArea() { + area = (above + bottom) / 2 * height; + return area; + // �����壬,Ҫ������area���� + } +} + +class Circle { + double radius, area; + + Circle(double r) { + radius = r; // ������ + } + + double getArea() { + return 3.14 * radius * radius; // �����壬Ҫ������area���� + } + + double getLength() { + return 3.14 * 2 * radius; // getArea������Ĵ���,Ҫ������length���� + } + + void setRadius(double newRadius) { + radius = newRadius; + } + + double getRadius() { + return radius; + } +} + +public class AreaAndLength { + public static void main(String args[]) { + double length, area; + Circle circle = null; + Trangle trangle; + Lader lader; + circle = new Circle(10); // ��������circle + trangle = new Trangle(3, 4, 5);// ��������trangle�� + lader = new Lader(3, 4, 10); // ��������lader + length = circle.getLength(); // circle���÷��������ܳ�����ֵ��length + System.out.println("Բ���ܳ�:" + length); + area = circle.getArea();// circle���÷��������������ֵ��area + System.out.println("Բ�����:" + area); + length = trangle.getLength(); // trangle���÷��������ܳ�����ֵ��length + System.out.println("�����ε��ܳ�:" + length); + area = trangle.getArea(); // trangle���÷��������������ֵ��area + System.out.println("�����ε����:" + area); + area = lader.getArea(); // lader���÷��������������ֵ��area + System.out.println("���ε����:" + area); + trangle.setABC(12, 34, 1); // trangle���÷������������ߣ�Ҫ����������Ϊ12,34,1�� + area = trangle.getArea(); // trangle���÷��������������ֵ��area + System.out.println("�����ε����:" + area); + length = trangle.getLength(); // trangle���÷��������ܳ�����ֵ��length + System.out.println("�����ε��ܳ�:" + length); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0302/Example.java b/works/life/java-practice/javatest/src/javatest/p0302/Example.java new file mode 100644 index 0000000..600a899 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0302/Example.java @@ -0,0 +1,47 @@ +package javatest.p0302; + +class A { + float a; // ����һ��float��ʵ������a + static float b; // ����һ��float�������b,��static����b + + void setA(float a) { + this.a = a; // ������a��ֵ��ֵ����Ա����a + } + + void setB(float b) { + this.b = b; // ������b��ֵ��ֵ����Ա����b + } + + float getA() { + return a; + } + + float getB() { + return b; + } + + void inputA() { + System.out.println(a); + } + + static void inputB() { + System.out.println(b); + } +} + +public class Example { + public static void main(String args[]) { + A.b = 100; // ͨ���������������b,����ֵ100 + A.inputB(); // ͨ���������÷���inputB() + A cat = new A(); + A dog = new A(); + cat.setA(200); // cat����÷���setA(int a)��cat�ij�Աa��ֵ����Ϊ200 + cat.setB(400); // cat���÷���setB(int b)��cat�ij�Աb��ֵ����Ϊ400 + dog.setA(150); // dog����÷���setA(int a)��dog�ij�Աa��ֵ����Ϊ150 + dog.setB(300); // dog���÷���setB(int b)��dog�ij�Աb��ֵ����Ϊ300 + cat.inputA(); // cat����inputA()�� + cat.inputB(); // cat����inputB()�� + dog.inputA(); // dog����inputA()�� + dog.inputB(); // dog����inputB()�� + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0303/SunRise.java b/works/life/java-practice/javatest/src/javatest/p0303/SunRise.java new file mode 100644 index 0000000..dbd964c --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0303/SunRise.java @@ -0,0 +1,12 @@ +package javatest.p0303; + +import javatest.p0303.sub.*; + +class SunRise { + public static void main(String args[]) { + SquareEquation equation = new SquareEquation(4, 5, 1); + equation.getRoots(); + equation.setCoefficient(-3, 4, 5); + equation.getRoots(); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0303/sub/SquareEquation.java b/works/life/java-practice/javatest/src/javatest/p0303/sub/SquareEquation.java new file mode 100644 index 0000000..0d7546c --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0303/sub/SquareEquation.java @@ -0,0 +1,46 @@ +package javatest.p0303.sub; + +public class SquareEquation { + double a, b, c; + double root1, root2; + boolean boo; + + public SquareEquation(double a, double b, double c) { + this.a = a; + this.b = b; + this.c = c; + if (a != 0) { + boo = true; + } else { + boo = false; + } + } + + public void getRoots() { + if (boo) { + System.out.println("��һԪ2�η���"); + double disk = b * b - 4 * a * c; + if (disk >= 0) { + root1 = (-b + Math.sqrt(disk)) / (2 * a); + root2 = (-b - Math.sqrt(disk)) / (2 * a); + System.out.printf("���̵ĸ�:%f,%f\n", root1, root2); + } else { + System.out.printf("����û��ʵ��\n"); + } + + } else { + System.out.println("����һԪ2�η���"); + } + } + + public void setCoefficient(double a, double b, double c) { + this.a = a; + this.b = b; + this.c = c; + if (a != 0) { + boo = true; + } else { + boo = false; + } + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0401/Example.java b/works/life/java-practice/javatest/src/javatest/p0401/Example.java new file mode 100644 index 0000000..d673821 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0401/Example.java @@ -0,0 +1,113 @@ +package javatest.p0401; + +class People { + protected double weight, height; + + public void speakHello() { + System.out.println("yayawawa"); + } + + public void averageHeight() { + height = 173; + System.out.println("average height:" + height); + } + + public void averageWeight() { + weight = 70; + System.out.println("average weight:" + weight); + } +} + +class ChinaPeople extends People { + public void speakHello() { + System.out.println("���,�Է�����?"); + } + + // ��дpublic void speakHello()������Ҫ��������ơ���ã������������� + // ������Ϣ + public void averageHeight() { + height = 173; + System.out.println("�й��˵�ƽ�����ߣ�" + height + "����"); + } + + // ��дpublic void averageHeight()������Ҫ��������� + // ���й��˵�ƽ�����ߣ�168.78���ס������ĺ�����Ϣ + public void averageWeight() { + weight = 67.34; + System.out.println("�й��˵�ƽ�����أ�" + weight + "����"); + } + + // ��дpublic void averageWeight()������ + // Ҫ��������ơ��й��˵�ƽ�����أ�65��������ĺ�����Ϣ + public void chinaGongfu() { + System.out.println("������,վ����,˯�繭");// ����й���������Ϣ�����磺"������,վ����,˯�繭"�� + } +} + +class AmericanPeople extends People { + public void speakHello() { + System.out.println("How do You do"); + } + + // ��дpublic void speakHello()������Ҫ��������� + // ��How do you do��������Ӣ����Ϣ�� + public void averageHeight() { + height = 188; + System.out.println("Amerian Average height:" + height + " cm"); + } + + // ��дpublic void averageHeight()���� + public void averageWeight() { + weight = 80.23; + System.out.println("Amerian Average weight:" + weight + " kg"); + } + + // ��дpublic void averageWeight()���� + public void americanBoxing() { + System.out.println("ֱȭ����ȭ");// ���ȭ������Ϣ�����磬��ֱȭ��������ȭ���� + } +} + +class BeijingPeople extends ChinaPeople { + public void speakHello() { + System.out.println("����"); + } + + // ��дpublic void speakHello()������Ҫ��������ơ����á������ĺ�����Ϣ + public void averageHeight() { + height = 16; + System.out.println("�����˵�ƽ�����ߣ�" + height + "����"); + } + + // ��дpublic void averageHeight()���� + public void averageWeight() { + weight = 6; + System.out.println("�����˵�ƽ�����أ�" + weight + "����"); + } + + // ��дpublic void averageWeight()���� + public void beijingOpera() { + System.out.println("��������");// ����������Ϣ + } +} + +public class Example { + public static void main(String args[]) { + ChinaPeople chinaPeople = new ChinaPeople(); + AmericanPeople americanPeople = new AmericanPeople(); + BeijingPeople beijingPeople = new BeijingPeople(); + chinaPeople.speakHello(); + americanPeople.speakHello(); + beijingPeople.speakHello(); + chinaPeople.averageHeight(); + americanPeople.averageHeight(); + beijingPeople.averageHeight(); + chinaPeople.averageWeight(); + americanPeople.averageWeight(); + beijingPeople.averageWeight(); + chinaPeople.chinaGongfu(); + americanPeople.americanBoxing(); + beijingPeople.beijingOpera(); + beijingPeople.chinaGongfu(); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0402/Subroutine.java b/works/life/java-practice/javatest/src/javatest/p0402/Subroutine.java new file mode 100644 index 0000000..6b11ace --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0402/Subroutine.java @@ -0,0 +1,23 @@ +package javatest.p0402; + +class Parent { // ���� + Parent() { + System.out.println("���ø����parent()���췽��"); + } +} + +class SubParent extends Parent { // �̳�Parent�� + SubParent() { + System.out.println("���������SubParent()���췽��"); + } +} + +public class Subroutine extends SubParent { // �̳�SubParent�� + Subroutine() { + System.out.println("���������Subroutine()���췽��"); + } + + public static void main(String[] args) { + Subroutine s = new Subroutine(); // ʵ����������� + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0403/Parallelogram.java b/works/life/java-practice/javatest/src/javatest/p0403/Parallelogram.java new file mode 100644 index 0000000..329aa80 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0403/Parallelogram.java @@ -0,0 +1,31 @@ +package javatest.p0403; + +class Quadrangle { + public static void draw(Quadrangle q) { + // SomeSentence + } +} + +class Square extends Quadrangle { + // SomeSentence +} + +class Anything { + // SomeSentence +} + +public class Parallelogram extends Quadrangle { + public static void main(String args[]) { + Quadrangle q = new Quadrangle(); // ʵ����������� + // �жϸ�������Ƿ�ΪParallelogram�����һ��ʵ�� + if (q instanceof Parallelogram) { + Parallelogram p = (Parallelogram) q; // ����ת�Ͳ��� + } + // �жϸ�������Ƿ�ΪParallelogram�����һ��ʵ�� + if (q instanceof Square) { + Square s = (Square) q; // ��������ת�Ͳ��� + } + // ����q����ΪAnything��Ķ���������������Ǵ���� + // System.out.println(q instanceof Anything); + } +} diff --git a/works/life/java-practice/javatest/src/javatest/p0404/Quadrangle.java b/works/life/java-practice/javatest/src/javatest/p0404/Quadrangle.java new file mode 100644 index 0000000..c6b6630 --- /dev/null +++ b/works/life/java-practice/javatest/src/javatest/p0404/Quadrangle.java @@ -0,0 +1,36 @@ +package javatest.p0404; + +public class Quadrangle { + // ʵ���������ı��ζ����������� + private Quadrangle[] qtest = new Quadrangle[6]; + private int nextIndex = 0; + + public void draw(Quadrangle q) { // ����draw()����������Ϊ�ı��ζ��� + if (nextIndex < qtest.length) { + qtest[nextIndex] = q; + System.out.println(nextIndex); + nextIndex++; + } + } + + public static void main(String[] args) { + // ʵ���������ı��ζ������ڵ���draw()���� + Quadrangle q = new Quadrangle(); + q.draw(new Square()); // �������ζ���Ϊ��������draw()���� + // ��ƽ���ı��ζ���Ϊ��������draw()���� + q.draw(new Parallelogramgle()); + } +} + +class Square extends Quadrangle { // ����һ���������࣬�̳��ı����� + public Square() { + System.out.println("������"); + } +} + +// ����һ��ƽ���ı����࣬�̳��ı����� +class Parallelogramgle extends Quadrangle { + public Parallelogramgle() { + System.out.println("ƽ���ı���"); + } +} -- cgit v1.2.3