暑假第二周总结(7.9-7.13)

  • 这周做了什么
    学习了JAVA的基本内容
    通过实例认识了JAVA的面向对象编程及一些不同于C++面向对象的知识。

时钟类

package Clock;

public class Clock {
    private Display hour=new Display(24);
    private Display minute=new Display(60);

    public void start(){
        minute.increase();
        if(minute.getValue()==0)
            hour.increase();
        System.out.printf("%02d:%02d\n",hour.getValue(),minute.getValue());
    }
    public static void main(String [] args)
    {
        Clock clock=new Clock();
        for(;;)
            clock.start();
    }
}

售货机类

package vendingmachine;

public class VendingMachine {
        int price=80;
        int balance;
        int total;
        void showPrompt()
        {
            System.out.println("Welcome");
        }
        void InsertMoney(int amount)
        {
            balance=balance+amount;
        }
        void showBalance()
        {
            System.out.println(balance);
        }
        void getFood()
        {
            if(balance>price) {
                System.out.println("Here you are");
                balance-=price;
                total=total+price;
            }

        }
    public static void main(String []args){
            VendingMachine VM=new VendingMachine();
        VM.showPrompt();
        VM.showBalance();
        VM.InsertMoney(100);
        VM.showBalance();
        VM.getFood();
        VM.showBalance();
    }
}

硬币辨别类

package coins;

import java.util.HashMap;
import java.util.Scanner;

public class Coins {
    private HashMap<Integer,String> coinnames=new HashMap<Integer,String>();
    public Coins(){
        coinnames.put(1,"penny");
        coinnames.put(5,"nickle");
        coinnames.put(10,"dimn");
        coinnames.put(25,"quater");
        coinnames.put(50,"half-dollar");
        System.out.println(coinnames.keySet().size());
        System.out.println(coinnames);
        for(Integer k: coinnames.keySet())
        {
            String s=coinnames.get(k);
            System.out.println(s);
        }
    }
    public String getName(int i) {
        if(coinnames.containsKey(i))
            return coinnames.get(i);
        else
            return "NOT FOUND";
    }
    public static void main(String []args){
        Scanner in=new Scanner(System.in);
        int amount=in.nextInt();
        Coins coin=new Coins();
        System.out.println(coin.getName(amount));

    }
}

etc.
与C++不同的是,JAVA是完全的面向对象编程在编程中会出现一些造型问题,不能用传统C++知识来应对。JAVA中的数组是对象数组,是对象的管理者,用一个数组给另一个数组赋值时,是同时管理同一数组
这与C++也不同。

除了JAVA的学习,我还坚持做基础题单。
/
/
/

遇到的问题
JAVA编程中的一些语句,如for-each循环,super(),不清楚如何运用
编程问题,题单第十三道函数题判断中位数,面对较大数组时如何运用希尔排序节省时间。

/
/
/

解决方案
JAVA问题看资料书解决
编程问题需要看视频教学理解,再自己复现代码.

posted @ 2024-07-13 21:15  花落水无痕  阅读(20)  评论(0)    收藏  举报