{"id":25725,"date":"2024-12-15T15:02:41","date_gmt":"2024-12-15T06:02:41","guid":{"rendered":"http:\/\/www.tyosuke20xx.com\/blog\/?p=25725"},"modified":"2024-12-15T15:12:25","modified_gmt":"2024-12-15T06:12:25","slug":"java-%e6%8a%bd%e8%b1%a1%e3%82%af%e3%83%a9%e3%82%b9","status":"publish","type":"post","link":"http:\/\/www.tyosuke20xx.com\/blog\/?p=25725","title":{"rendered":"Java \u62bd\u8c61\u30af\u30e9\u30b9"},"content":{"rendered":"<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: java; title: ; notranslate\" title=\"\">\n\n<\/pre><\/div>\n\n\n<pre class=\"wp-block-code\"><code>abstract class Score {\n  private String subject;\n  protected int score;\n\n  Score(String subject, int score) {\n    this.subject = subject;\n    this.score = score;\n  }\n\n  protected abstract String getResult();\n\n  String getScoreString() {\n    return this.subject + \", \" + this.score + \", \" + this.getResult();\n  }\n}\n\nclass MathScore extends Score {\n  MathScore(int score) {\n    super(\"Math\", score);\n  }\n\n  @Override\n  protected String getResult() {\n    System.out.println(\"MathScore method\");\n    return this.score >= 50 ? \"Pass\" : \"Fail\";\n  }\n}\n\nclass EnglishScore extends Score {\n  EnglishScore(int score) {\n    super(\"English\", score);\n  }\n\n  @Override\n  protected String getResult() {\n    System.out.println(\"EnglishScore method\");\n    return this.score >= 70 ? \"Pass\" : \"Fail\";\n  }\n}\n\nclass User {\n  private String name;\n  private Score score;\n\n  User(String name, Score score) {\n    this.name = name;\n    this.score = score;\n  }\n\n  String getUserString() {\n    return this.name + \", \" + this.score.getScoreString();\n  }\n}\n\npublic class MyApp {\n  public static void main(String&#91;] args) {\n    User user1 = new User(\"Taro\", new MathScore(70));\n    User user2 = new User(\"Jiro\", new EnglishScore(80));\n\n    System.out.println(user1.getUserString());\n    System.out.println(user2.getUserString());\n  }\n}\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[76],"tags":[3],"class_list":["post-25725","post","type-post","status-publish","format-standard","hentry","category-java","tag-programming"],"aioseo_notices":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/25725","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=25725"}],"version-history":[{"count":2,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/25725\/revisions"}],"predecessor-version":[{"id":25727,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/25725\/revisions\/25727"}],"wp:attachment":[{"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=25725"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=25725"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.tyosuke20xx.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=25725"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}