CodeGym /ื‘ืœื•ื’ Java /Random-HE /ืงื‘ื™ืขื•ืช ื’'ืื•ื•ื”
John Squirrels
ืจึธืžึธื”
San Francisco

ืงื‘ื™ืขื•ืช ื’'ืื•ื•ื”

ืคื•ืจืกื ื‘ืงื‘ื•ืฆื”
ื”ืฆื”ืจืช Assert ื‘-Java ืžืฉืžืฉืช ืœื‘ื“ื™ืงืช ื”ื ื—ื•ืช ืžืกื•ื™ืžื•ืช ืœื’ื‘ื™ ืžืฆื‘ ืชื•ื›ื ื™ืช ื‘ืžื”ืœืš ื”ื‘ื™ืฆื•ืข. ื–ื” ืขื•ื–ืจ ืœื–ื”ื•ืช ื‘ืงืœื•ืช ืฉื’ื™ืื•ืช ื•ื ื™ืคื•ื™ ื‘ืื’ื™ื ื‘ืชื•ื›ื ื™ืช. ื”ืฆื”ืจืช ื˜ืขื ื” ื‘-Java ื ื›ืชื‘ืช ื‘ืืžืฆืขื•ืช ืžื™ืœืช ื”ืžืคืชื— Java assert ื•ืื—ืจื™ื” ื‘ื™ื˜ื•ื™ ื‘ื•ืœื™ืื ื™. ืื ื”ื‘ื™ื˜ื•ื™ ืžื•ืขืจืš ื›ื ื›ื•ืŸ, ื”ื˜ืขื ื” ืขื•ื‘ืจืช ื‘ืฉืงื˜ ื•ื”ืชื•ื›ื ื™ืช ืขื•ืฉื” ืืช ืขื‘ื•ื“ืชื”. ืื ื”ื•ื ืžื•ืขืจืš ื›-false, ื”ื˜ืขื ื” ื ื›ืฉืœืช ื•- AssertionError ื ื–ืจืง. ื‘ื•ืื• ื ื‘ื™ื ื“ื•ื’ืžื” ืœืชื•ื›ื ื™ืช ืขื ืงื‘ื™ืขื•ืช Java.
//Assertion in Java example
public class AssertDemo1 {
   public static void main(String[] args) {
       int x = 5;
       assert x == 5 : "x should be 5";
       System.out.println(x);
   }
}
ื›ืืŸ ื”ื‘ื™ื˜ื•ื™ ื ื›ื•ืŸ, ืื– ื”ืชื•ื›ื ื™ืช ืคืฉื•ื˜ ืžืžืฉื™ื›ื” ื‘ืชืคืงื™ื“ื”. ื”ืคืœื˜ ื”ื•ื ื‘ื“ื™ื•ืง ื›ืคื™ ืฉื”ื•ื ืฆืคื•ื™ ืœื”ื™ื•ืช:
5

AssertionError ื“ื•ื’ืžื”

ื‘-Java, AssertionError ื”ื™ื ืชืช ืžื—ืœืงื” ืฉืœ ืžื—ืœืงื” Error ื•ื”ื™ื ื ื–ืจืงืช ื›ืืฉืจ ื˜ืขื ื” ื ื›ืฉืœืช. ืงื‘ื™ืขื•ืช ื‘-Java ืžืฉืžืฉื•ืช ื‘ื“ืจืš ื›ืœืœ ื›ื“ื™ ืœื‘ื“ื•ืง ืฉืชื ืื™ื ืžื•ืงื“ืžื™ื, ืชื ืื™ื ืคื•ืกื˜-ืชื ืื™ื ืื• ืื™-ื•ืจื™ืื ื˜ื™ื ืžืชืงื™ื™ืžื™ื. ื›ืคื™ ืฉืืžืจื ื• ืœื”ืœืŸ, AssertionError ื ื–ืจืงืช ื›ืืฉืจ ื”ืฆื”ืจืช ื˜ืขื ื” ืœื ืžืฆืœื™ื—ื” ืœื”ืขืจื™ืš ื›ืืžืช. ื›ืขืช ื ื›ืชื•ื‘ ืžื—ื“ืฉ ืืช ื”ืชื•ื›ื ื™ืช ืฉืœื ื• ื›ืš ืฉื”ื‘ื™ื˜ื•ื™ ื”ื‘ื•ืœื™ืื ื™ ื™ื”ื™ื” ืฉืงืจื™.
//AssertionError example
public class AssertDemo1 {
   public static void main(String[] args) {
       int x = 5;
       assert x == 7 : "x should be 7";
       //here should be AssertionError
       System.out.println(x);
   }
}
ื•ื‘ื›ืŸ, ืื ื—ื ื• ืžืคืขื™ืœื™ื ืืช ื–ื” ื•ื”ืคืœื˜ ื”ื•ื...
5
ืžืฉื”ื• ื‘ื”ื—ืœื˜ ื”ืฉืชื‘ืฉ ื‘ื“ื•ื’ืžื” ืฉืœื ื•! ืืžื•ืจื” ืœื”ื™ื•ืช ืœื ื• AssertionError ื›ื™ ื”-x ืฉืœื ื• ื”ื•ื 5 ื•ื”ืงื‘ื™ืขื” ืžืฆืคื” ืฉื”ื•ื ื™ื”ื™ื” 7. ืžื” ืœื ื‘ืกื“ืจ ื›ืืŸ? ื—ืฉื•ื‘ ืœืฆื™ื™ืŸ ืฉื ื™ืชืŸ ืคืฉื•ื˜ ืœื”ืฉื‘ื™ืช ืงื‘ื™ืขื•ืช Java ื‘-JVM, ื•ืœื›ืŸ ืื™ืŸ ืœื”ืฉืชืžืฉ ื‘ื”ืŸ ื›ืืžืฆืขื™ ื”ื™ื—ื™ื“ ืœื‘ื“ื™ืงืช ืฉื’ื™ืื•ืช ื‘ืชื•ื›ื ื™ืช. ื”ื ืฉื™ืžื•ืฉื™ื™ื ืขื‘ื•ืจ ืื™ืชื•ืจ ื‘ืื’ื™ื ื•ื‘ื“ื™ืงื•ืช, ืืš ืื™ืŸ ืœื”ืกืชืžืš ืขืœื™ื”ื ืขื‘ื•ืจ ืงื•ื“ ื™ื™ืฆื•ืจ. ืื– ื›ื“ื™ ืœื”ืฉืชืžืฉ ื‘ื”ืฆื”ืจื•ืช, ืืชื” ืฆืจื™ืš ืœื”ืคืขื™ืœ ืื•ืชืŸ ื‘ืืžืฆืขื•ืช ื”ืืคืฉืจื•ืช vm -ea (ืื• -enableassertions). ืื ืืชื” ืขื•ื‘ื“ ืขื ืฉื•ืจืช ื”ืคืงื•ื“ื”, ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ืคืงื•ื“ื” ื”ื‘ืื” ืขื‘ื•ืจ ื”ืชื•ื›ื ื™ืช ืฉืœืš AssertDemo1:
java -ea AssertDemo1
ืื ืชืคืขื™ืœ ื”ืฆื”ืจื•ืช ื•ืชืคืขื™ืœ ืžื—ื“ืฉ ืืช ืื•ืชื” ืชื•ื›ื ื™ืช, ืชืงื‘ืœ ืืช ื”ืชื•ื›ื ื™ืช ื”ื‘ืื”:
ื—ืจื™ื’ ื‘ืฉืจืฉื•ืจ "main" java.lang.AssertionError: x ืฆืจื™ืš ืœื”ื™ื•ืช 7 ื‘-AssertDemo1.main(AssertDemo1.java:4)
ื–ื• ื”ื ืงื•ื“ื”.

ื›ื™ืฆื“ ืœืืคืฉืจ ื—ืจื™ื’ื™ื ื‘-IntelliJ IDEA

  1. ืขื‘ื•ืจ ืœืชืคืจื™ื˜ ื”ืคืขืœื” โ† ืขืจื•ืš ืชืฆื•ืจื•ืช....
  2. ื”ื–ืŸ ืืช ื”ืคืจืžื˜ืจ -ea ื‘ืฉื•ืจื” ืืคืฉืจื•ื™ื•ืช VM
ืงื‘ื™ืขื•ืช ื’'ืื•ื•ื” - 1ื›ืขืช ื”ื”ืฆื”ืจื•ืช ืžื•ืคืขืœื•ืช ื•ืชื•ื›ืœ ืœื”ืฉืชืžืฉ ื‘ื”ืŸ.

ืงื‘ื™ืขื•ืช ืœื‘ื“ื™ืงืช ื™ื—ื™ื“ื•ืช ื‘-Java

ื‘-Java, ื‘ื“ื™ืงืช ื™ื—ื™ื“ื•ืช ื”ื™ื ื˜ื›ื ื™ืงื” ื”ื›ื•ืœืœืช ื‘ื“ื™ืงืช ืžื•ื“ื•ืœื™ ืงื•ื“ ื‘ื•ื“ื“ื™ื ื›ื“ื™ ืœื•ื•ื“ื ืฉื”ื ืคื•ืขืœื™ื ื›ื”ืœื›ื”. ื”ืฆื”ืจื•ืช ืžืฉืžืฉื•ืช ื‘ื“ืจืš ื›ืœืœ ื‘ื‘ื“ื™ืงืช ื™ื—ื™ื“ื•ืช ื‘-Java ื›ื“ื™ ืœื•ื•ื“ื ืฉื”ืงื•ื“ ืฉื ื‘ื“ืง ืคื•ืขืœ ื›ืžืฆื•ืคื”. ื‘ื‘ื“ื™ืงืช ื™ื—ื™ื“ื•ืช, ื™ื—ื™ื“ืช ืงื•ื“, ืœืžืฉืœ ืฉื™ื˜ื” ืžืกื•ื™ืžืช, ื ื‘ื“ืงืช ื‘ืžื ื•ืชืง ื›ื“ื™ ืœื•ื•ื“ื ืฉื”ื™ื ืคื•ืขืœืช ื›ื”ืœื›ื” ื‘ืชื ืื™ื ื•ืชืฉื•ืžื•ืช ืฉื•ื ื•ืช. ื‘ื•ืื• ื ื‘ื™ื ื“ื•ื’ืžื”. ื›ืืŸ ื™ืฉ ืœื ื• ืžื—ืฉื‘ื•ืŸ ืคืฉื•ื˜ ืœื—ื™ื‘ื•ืจ, ื—ื™ืกื•ืจ, ื›ืคืœ ื•ื—ื™ืœื•ืง 2 ืžืกืคืจื™ื ืฉืœืžื™ื.
public class MyMath {

   public static int add (int a, int b) {
       return a + b;
   }

   public static int sub (int a, int b) {
       return a - b;
   }

   public static int mult (int a, int b) {
       return a*b;
   }

   public static double div (int a, int b) {
       return a/b;
   }
}
ื›ืžื•ื‘ืŸ, ื™ืฉ ื”ืจื‘ื” ืฉืืœื•ืช ืœื’ื‘ื™ ื”ื™ื™ืฉื•ื ื”ื–ื” (ืœืžืฉืœ, ืžื” ืงื•ืจื” ืื ื ื•ืกื™ืฃ ืืช ื”-int ื”ื’ื“ื•ืœ ื‘ื™ื•ืชืจ ืœืžืกืคืจ ืื—ืจ), ืื‘ืœ ืœืขืช ืขืชื” ื ืฉืื™ืจ ืืช ื”ื™ื™ืฉื•ื ื”ื–ื” ื›ืžื• ืฉื”ื•ื. ื›ืขืช ื ื›ืชื•ื‘ ืžื—ืœืงื” ื‘ื” ื ื‘ื“ื•ืง ืืช ื”ืฉื™ื˜ื•ืช ืฉืœ ืžื—ืœืงืช myMath ื‘ืขื–ืจืช ืžื‘ื—ื ื™ ื™ื—ื™ื“ื”. ื ื›ื•ืŸ, ืจืง ืฉื ื™ื™ื ืžื”ื. ืœืžืขืฉื”, ื ื™ืชืŸ ืœื›ืชื•ื‘ ืžื‘ื—ื ื™ื ื”ื‘ื•ื“ืงื™ื ื˜ื™ืขื•ื ื™ื ืœืชืงืคื•ืช, ื”ืื ืฉื™ื˜ื” ืžื˜ืคืœืช ื‘ืžืงืจื™ื ืžื™ื•ื—ื“ื™ื ื•ื›ื•'. ืื‘ืœ ื›ืืŸ ื ื’ื‘ื™ืœ ืืช ืขืฆืžื ื• ืœื›ืžื” ืžื‘ื—ื ื™ื ืœืžื˜ืจื•ืช ื”ื“ื’ืžื”.
import org.junit.Test;

import static org.junit.Assert.assertEquals;

public class MyMathTesting {
   @Test
   public void testAdd() {
       MyMath calculator = new MyMath();
       int sum = calculator.add(2, 3);
       assertEquals(5, sum);
   }

   @Test
   public void testSub() {
       MyMath calculator = new MyMath();
       int sub = calculator.sub(5, 2);
       assertEquals(3, sub);
   }

}
ืฉื™ื˜ืช assertEquals ื”ื™ื ื˜ืขื ื” ื”ื‘ื•ื“ืงืช ืื ืฉื ื™ ืขืจื›ื™ื ืฉื•ื•ื™ื. ืื ื”ืขืจื›ื™ื ืื™ื ื ืฉื•ื•ื™ื, ืชื•ืฉืง AssertionError , ื”ืžืฆื™ื™ืŸ ืฉื”ืžื‘ื—ืŸ ื ื›ืฉืœ. ืฉื™ืžื•ืฉ ื‘ื”ืฆื”ืจื•ืช ื‘ืžื‘ื—ื ื™ ื™ื—ื™ื“ื•ืช ื™ื›ื•ืœ ืœืขื–ื•ืจ ืœืš ืœืชืคื•ืก ื‘ืื’ื™ื ื•ืœื”ื‘ื˜ื™ื— ืฉื”ืงื•ื“ ืฉืœืš ืคื•ืขืœ ื›ื”ืœื›ื” ื‘ืชื ืื™ื ื•ื‘ื›ื ื™ืกื•ืช ืฉื•ื ื•ืช. ื ืกื• ืœื”ื•ืกื™ืฃ ื‘ืขืฆืžื›ื ืžื‘ื—ื ื™ื ื›ืืœื” ืœื—ื™ืœื•ืง ื•ื›ืคืœ. ื–ื” ืœื ืงืฉื”.
ื”ืขืจื•ืช
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION