zoukankan      html  css  js  c++  java
  • 对象的练习

    对象的创建和使用练习

    public class TestCar {
        public static void main(String[] args) {
            Car c1=new Car();
            c1.info();
            /*c1.setName("保时捷");
            c1.setWheel(4);(使用方法调用的方式来输出,和调用属性的方法输出结果一样)*/
            //调用属性的方法
            c1.name="保时捷";
            c1.wheel=4;
            c1.info();
    
            Factory f=new Factory();
            Car c2=f.produceCar();
            f.describeCar(c2);
    
            Car c3=f.produceCar("路虎",6);
            f.describeCar(c3);
        }
    }
    class Factory{
        //制造车(下面两个方法构成重载)
        public Car produceCar(){
            return new Car();//调用car这个类
        }
        public Car produceCar(String n,int w){
            Car c=new Car();
            c.name=n;
            c.wheel=w;
            return c;
        }
        //描述车的信息
        public void describeCar(Car c){
            c.info();
        }
    }
    class Car {
        //1.属性
        String name;
        int wheel;
    
        //2.方法
        public void info() {
            System.out.println("name" + name + "wheel" + wheel);
        }
    
        public void show() {
            System.out.println("我是一辆车");
        }
    
        public String getName() {
            return name;
        }
    
        /*public void setName(String name) {
            this.name = name;
        }
    
        public void setWheel(int wheel) {
            this.wheel = wheel;
        }使用调用方法的方式*/
    }


    对象作为参数传递的练习

    public class Passobject {
        public void printAreas(Circle c,int time){
            System.out.println("radius"+"		"+"Area");
            int temp=0;
            for (int i=1;i<=time;i++,temp=i){
                c.setRadius(i);
                System.out.println(c.getRadius()+"		"+c.findArea());
            }
            c.setRadius(temp);
        }
    }
    class Circle{
        double radius;
        public double findArea(){
            /*double s=Math.PI*radius*radius;
            return s;调用属性*/
            double s=Math.PI*getRadius()*getRadius();
            return s;//调用方法
        }
    
        public double getRadius() {
            return radius;
        }
    
        public void setRadius(double radius) {
            this.radius = radius;
        }
    
        public static void main(String[] args) {
            Passobject p=new Passobject();
            Circle c=new Circle();//此时半径为0
            p.printAreas(c,5);
            System.out.println("now radius is:"+c.getRadius());
        }
    }


    1.匿名类对象(创建类的对象可以没有名字):创建类的对象是匿名的
    (1)当我们只需要一次调用类的对象时,我们就可以考虑使用匿名的方式创建类的对象
    (2)特点是创建的匿名类的对象

  • 相关阅读:
    面向对象串讲
    昨日回顾
    socketserver模块
    今日总结
    在centos6.5-64bit上安装wxHexEditor,以查看编译二进制文件
    spring security 关于 http.sessionManagement().maximumSessions(1);的探究
    spring boot + spring security +前后端分离【跨域】配置 + ajax的json传输数据
    window10 查看端口列表
    spring boot 解决 跨域 的两种方法 -- 前后端分离
    spring security 动态 修改当前登录用户的 权限
  • 原文地址:https://www.cnblogs.com/KeepCalmAndNeverSayNever/p/10117114.html
Copyright © 2011-2022 走看看