首页 > 编程语言 >【Java基础】12.9习题(封装,继承)

【Java基础】12.9习题(封装,继承)

时间:2022-12-09 15:23:19浏览次数:54  
标签:case Java void System public println 习题 12.9 out

水仙花数

import java.util.*; //万能头
public class Main
{
    public static void main(String[] args)
    {
        for(int i=100;i<1000;i++)
        {
            if(isYes(i))
            {
                System.out.println(i);
            }
        }
    }
    public static boolean isYes(int x)
    {
        int a=x/100,b=x/10%10,c=x%10;
        if(x==a*a*a+b*b*b+c*c*c) return true;
        else return false;
    }
}

练习题:面向对象 封装百分制分数
需求:封装百分制分数,和它对应的五档分制分数
分数类

public class Score {
    int score;
    char level;
    public Score(int score) {
        this.score = score;
        this.level = setLevel(score);
    }
    private char setLevel(int s) {
        char r = 0;
        switch(s/10)
        {
            case 10: case 9:
                r = 'A';
                break;
            case 8:case 7:
                r = 'B';
                break;
            case 6:
                r = 'C';
                break;
            case 5:case 4:case 3:case 2:
                r = 'D';
                break;
            case 1:case 0:
                r = 'E';
                break;
        }
        return r;
    }
    public String toString() {
        return score+", "+level;
    }
}

主函数

public class zhuhanshu
{
    public static void main(String[] args)
    {
        Score s = new Score(20);
        System.out.println(s.toString());
    }
}

练习题:面向对象 打印图形
需求:设计一个可以随机打印形状的代码
主函数

import java.util.*; //万能头
public class zhuhanshu
{
    public static void main(String[] args)
    {
        System.out.println("按回车继续");
        while(true) {
            int r = new Random().nextInt(4);
            switch(r)
            {
                case 0: f(new Shape()); break;
                case 1: f(new Line()); break;
                case 2: f(new Square()); break;
                case 3: f(new Circle()); break;
            }
        }
    }
    static void f(Shape s) {
        System.out.println("----------------");
        new Scanner(System.in).nextLine();
        s.draw();
        if(s instanceof Line)
        {
            Line line = (Line) s;
            line.length();
        }
        new Scanner(System.in).nextLine();
        s.clear();
    }
}

父类

public class Shape {
    public void draw()
    {
        System.out.println("图形形状");
    }
    public void clear()
    {
        System.out.println("\n\n\n");
    }
}

直线类

public class Line extends Shape {
    public void draw() {
        System.out.println("打印一条直线 ————");
    }
    public void length() {
        System.out.println("一米多。。。");
    }
}

圆形类

public class Circle extends Shape{
    public void draw()
    {
        System.out.println("打印一个圆形 o");
    }
}

方形类

public class Square extends Shape {
    public void draw()
    {
        System.out.println("打印一个方形 口");
    }
}

标签:case,Java,void,System,public,println,习题,12.9,out
From: https://www.cnblogs.com/Vivian-0918/p/16968915.html

相关文章

  • Java使用Steam流对数组进行排序
    原文地址:Java使用Steam流对数组进行排序-Stars-One的杂货小窝简单记下笔记,不是啥难的东西sorted()方法里传了一个比较器的接口Filefile=newFile("D:\\temp\\db_ba......
  • java概述
    1.java概述1.1java发展史​1995年,Sun发布JDK1.0。​1998年,JDK1.2,后续接连JDK1.3,1.4,1.5,更名为Java5,最新版本为OracleJDK17于2021年发布。JDK17是LTS版本,J......
  • java获取链接数据
    java获取链接数据packagecom.dongao.test;importcom.alibaba.fastjson.JSON;importcom.dongao.project.common.util.HttpPostUtil;importjava.util.*;/***@ClassName:......
  • java.io.InvalidClassException异常解决
    java.io.InvalidClassException异常解决​​1.什么是serialVersionUID​​​​2.java.io.InvalidClassException产生原因?​​​​3.java.io.InvalidClassException解决方案......
  • Java中new Long(String s)和Long.valueOf(String s)的区别
    想要知道newLong(Strings)和Long.valueOf(Strings)的区别,还是得从源码直接看比较直观newLong(Strings)Long.valueOf(Strings)从源码可以看出,使用newLong(s)和Long.v......
  • java实现文件对比
    java实现文件对比​​需求​​​​实现效果​​​​后端代码引入​​需求web项目需要实现文件内容对比功能,开发语言是java,也就是通过java实现类似于svn的文件对比功能实现效......
  • Mysql开启ssl加密协议及Java客户端配置操作指南
    Mysql开启ssl加密协议及Java客户端配置操作指南​​Mysql配置​​​​验证Mysql开启SSL​​​​Java客户端操作​​​​生成证书密码​​​​配置数据库连接​​​​工具配......
  • Java格式化日期 微秒
    Java格式化日期微秒​​Date、LocalDateTime格式化微秒值​​​​Date、LocalDateTime互转​​本文主要讲述Java日期格式化及格式化日期到微秒Date、LocalDateTime格式化......
  • Java项目开发小tips
    1、idea对于JS代码的兼容性较差,编写了js代码但是有时候不能正常加载。解决方法:(1)idea缓存清理;  (2)clear-install;先clear,清理完成之后再install。  (3)rebuild重......
  • 小新学Java15-【字节流、字符流】
    一、IO概述1.1什么是IO1.2IO的分类1.3IO的流向说明图解1.4顶级父类们二、字节流2.1一切皆为字节一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形......