精华内容
下载资源
问答
  • 第二课 如何去创建一个类和对象

    千次阅读 2014-11-10 20:46:12
    第二课 如何去创建一个类和对象 如何去创建一个类和对象

    一个类包含属性和行为(方法)

    第一课中提到我需要去做一个事情(造人)但是JAVA里面没有提供这样一个类(泥巴),所以我需要去创建一个这样的类

    <span style="font-size:18px;">public class Person{
     /*定义累的属性(</span>成员变量)*/
     String name;
     String gender;
     int age;
     /*类的方法(行为)无参数无返回*/
     public void eat(){
      System.out.println("我在吃饭");
     }
    }//类定义完了,这是一个创建人的模具


    创建对象(人)
    注意:
    1.必须使用new关键字创建一个对象
    2.使用对象属性(对象名,成员变量)
    3.使用对象方法(对象名,方法)
    4.同一个类的每个对象有不同的成员变量的存储空间
    5.同一个类的每个对象共享该类的方法

    public class A2{
     public static void main(String[] args){
      Person MyPerson=new Person();
      Myperson.name="小明";//调用属性
      System.out.println(Myperson.name);
      Myperson.eat();//调用方法
     }
    }
    



    
    展开全文
  • 定义一个类只能创建一个对象

    千次阅读 2014-10-13 08:30:38
    有时我们的程序中需要定义一个类,这个类只能创建一个youxiaosh

           有时我们的程序中需要定义一个类,这个类只能创建一个有效实例,在很多公司的招聘笔试题中,也经常会遇到这样的题目。网上也有不少关于这个问题的帖子,但是都说的很笼统,或者帖子里面的程序多多少少有点错误。下面和大家分享一下我对于这个问题的认识,C++。

           建议使用第一种方法,可以自定义类对象限制个数。

           第一种方法,在类中创建一个静态变量Count,用来限制可创建的实例的数量。完整的程序片段如下,我尽量在程序中添加了所有的注释:

    #include <iostream>
    
    class SingleClass
    {
    public:
        static SingleClass* GetSingleClass()    //静态成员函数
        {
            if (Count > 0)
            //如果Count大于0,那么就调用new创建一个类指针,并且计数Count减1,否则返回NULL
            {
                Count--;
                return new SingleClass();
            }
            else
            {
                return NULL;
            }
        }
    private:
        SingleClass(){};
        static int Count;   //静态成员变量Count,不允许在类中初始化。定义为const则可以在这初始化,但是不可更改,不适合在这使用
    };
    
    int SingleClass::Count = 1; //Count的初始化,可以自己设置限制创建实例的个数
    
    int main()
    {
        SingleClass* test;  //只能通过定义类指针来创建类实例
        test = SingleClass::GetSingleClass();
        return 0;
    }

            上面程序第一次调用GetSingleClass函数时,可以得到一个正确的类对象指针。如果第二次调用GetSingleClass函数,则会得到NULL。static int Count变量不能在类中初始化,需要在类外初始化。
            第二种方法,在类中创建一个静态类指针变量pSinClass,初始化为NULL,当成功创建一个类实例时,pSinClass不再为NULL,若pSinClass不为NULL,则不能再创建类对象。完整的程序片段如下:

    #include <iostream>
    
    class SingleClass
    {
    public:
        static SingleClass* GetSingleClass()    //静态成员函数
        {
            if (pSinClass == NULL)
            //如果pSinClass为NULL,那么就调用new创建一个类指针,否则返回NULL
            {
                pSinClass = new SingleClass();
                return pSinClass;
            }
            else
            {
                return NULL;
            }
        }
    private:
        SingleClass(){};
        static SingleClass* pSinClass;   //静态成员变量pSinClass,不允许在类中初始化。定义为const则可以在这初始化,但是不可更改,不适合在这使用
    };
    
    SingleClass* SingleClass::pSinClass = NULL; //pSinClass的初始化
    
    int main()
    {
        SingleClass* test;  //只能通过定义类指针来创建类实例
        test = SingleClass::GetSingleClass();
        return 0;
    }

            上面介绍了两种简单的限制类实例个数的方法,个人见解,有不好的地方请谅解,有什么更好的建议,回复一下哈~~~

    展开全文
  • Java创建一个学生

    万次阅读 多人点赞 2019-07-06 20:37:46
    创建一个表示学生的实体 Student,其中有学生姓名、性别和年龄信息。要求使用属性来表示学生信息,最终编写测试代码。 首先定义一个名为 Student 的,代码如下: public class Student { //学生 } 在...

    创建一个表示学生的实体类 Student,其中有学生姓名、性别和年龄信息。要求使用属性来表示学生信息,最终编写测试代码。

    首先定义一个名为 Student 的类,代码如下:

     
    1. public class Student
    2. {
    3. //学生类
    4. }


    在类中通过属性定义学生、性别和年龄,代码如下:

     
    1. public class Student
    2. {
    3. public String Name; //学生姓名
    4. public int Age; //学生年龄
    5. private boolean Sex; //学生性别
    6. }


    在上述代码中将学生性别属性 Sex 设置为 private 作用域。为了对该属性进行获取和设置,还需要编写 isSes 和 setSex 方法。代码如下:

     
    1. public boolean isSex()
    2. {
    3. return Sex;
    4. }
    5. public void setSex(boolean sex)
    6. {
    7. this.Sex=sex;
    8. }


    在 Student 类中添加 main() 方法,然后创建两个学生类的实例,并输出学生信息。最终代码如下:

     
    1. public static void main(String[] args)
    2. {
    3. Student zhang=new Student(); //创建第一个实例
    4. zhang.Name="张子同";
    5. String isMan=zhang.isSex()?"女":"男";
    6. System.out.println("姓名:"+zhang.Name+"性别:"+isMan+"年龄:"+zhang.Age);
    7. Student li=new Student(); //创建第二个实例
    8. li.Name="李子文";
    9. li.Sex=true;
    10. li.Age=15;
    11. String isWoman=li.isSex()?"女":"男";
    12. System.out.println("姓名:"+li.Name+"性别:"+isWoman+"年龄:"+li.Age);
    13. }


    输出结果如下:

    姓名:张子同性别:男年龄:0
    姓名:李子文性别:女年龄:15


    由输出结果可以看到,在第一个实例 zhang 中由于仅设置了 Name 属性的值,所以 boolean 类型的 Sex 默认使用值 false,int 类型的 Age 默认使用值 0。第二个实例 li 同时设置了这三个属性的值。

    展开全文
  • java007如何java创建一个类

    万次阅读 2019-04-16 20:22:37
    二,如何在java中创建一个类?定义属性,方法,以及实例化一个对象并调用类里面的内容? 方法:1:无进无出:没有返回值,没有参数传 2:无进有出:没有返回值,有参数 3:有进无出:有返...

    一,编程的一般思路
    1,ooa:面向对象分析
    2,ood:面向对象设计
    3,oop:面向对象编程
    4,测试
    5,项目交接,给客户演示,演示完了项目就上线运行,运行期间有bug就项目升级(后期维护)----是收钱的哦
    二,如何在java中创建一个类?定义属性,方法,以及实例化一个对象并调用类里面的内容?
    方法:1:无进无出:没有返回值,没有参数传
    2:无进有出:没有返回值,有参数
    3:有进无出:有返回值,没有参数
    4:有进有出 :有返回值,有参数

    在这里插入图片描述

    三,方法重载:就是方法名相同,方法参数的个数和类型不同,通过个数和类型的不同来区分不同的函数。Java的重载是发生在本类中的,重载的条件实在本类中有多个方法名相同,但参数列表不同
    ###同一个类中,方法名相同,参数列表不同(1:参数个数不同2:参数类型不同3:参数顺序不同),切记:跟返回值类型无关,跟修饰符无关(public就是一个修饰符)
    他们两个就构成了方法重载::::
    在这里插入图片描述
    思考:一个类中为什么要定义那么多的同名方法呢(方法重载)?
    原因是每个方法的具体实现有差异,我们不能以偏概全
    四,全局变量和局部变量
    全局变量都是有默认值,而且在类的任何地方都可以使用,说白了就是定义在方法之外的变量
    ###8种基本数据类型的默认值
    在这里插入图片描述
    局部变量:定义在方法中,形参上,或者是一个块中,局部变量的作用域是从它的括号({})开始到结束.
    ###形参: 在方法被调用时用于接受外界输入的数据;(方法中的参数)
    ###实参:   调用方法时外界传给方法的数据;

    注意:局部变量是没有默认值的,在你使用之前必须给它赋值

    五,this关键字

    在这里插入图片描述

    在这里插入图片描述
    1:代表当前类对象
    2:区分同名属性和局部变量
    ####当全局变量和局部变量重名时,在方法中使用this时,表示的是该方法所在类中的全局变量
    在这里插入图片描述
    3:调用本类中重载的构造器,谁调用它,它就是谁这个this必须写在构造器的第一句

    在这里插入图片描述
    六,构造器:构造方法,构造函数.
    类在构建对象的时候系统会默认的去那个构造器,如果类中你自己没有定义构造器,系统会自动帮你生成一个无参构造器 。
    构造器的作用是:1,初始化对象(给属性赋值)构造器也能重载
    2.构造代码块,代码块 { }
    构造代码块是在实例化对象的时候优先于构造器先执行的
    构造代码块的作用:是给对象的共性赋值,比如张三爱吃米饭,李四爱吃米饭,王五也爱吃,所有人都爱吃米饭,所以用构造代码块给共性赋值
    ###我在百度上搜了一点:
    在这里插入图片描述
    七,引起类的加载方式
    注意:实例变量(普通属性)隶属于构造代码块—就是谁在前面谁先执行
    ###实例变量(全局变量):独立于方法之外的变量,不过没有 static 修饰。

    String str="hello world"; // 实例变量
    

    1:实例化对象,new的时候

    int s=new ...
    

    2:调用类里面的静态属性或静态方法
    3:Class.forName(); 加载驱动(反射机制)
    八,Static关键字
    1:修饰属性
    属性就是静态属性(类属性,类属性就是该属性是属于类的,不属于对象的),可以直接通过类名访问,所以实际共享该类属性

    2:修饰方法
    该方法可以直接被类名调用注意:静态方法中不能使用非静态属性静态方法中不能使用this和 super关键字
    在这里插入图片描述
    3:修饰代码块
    {}静态代码块是最先执行的,在整个程序运行期间只执行一次,用于数据库连接

    static{} 
    

    4:静态导入

     import static java.lang.System.out;
    

    就是输出时不再输System.;直接out.println();
    九,8种基本数据类型对应的封装类

    在这里插入图片描述
    学习这8个封装类主要学习它里面的api
    8种基本数据类型和8种对应的封装类可以自动转换,这8种封装类里面用的最多的一个api就是将字符串转成数字
    注意:char不能进行字符串转数字
    boolean只有字符串是ture的时候才转ture,其他都是false
    在这里插入图片描述
    十,内存分配
    Java中内存分为5个
    1:栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中)
    2:堆:存放所有new出来的对象。
    3:常量存储区:存放常量
    4:静态存储区:存放静态成员(static定义的)
    5:方法区
    ==是用来判断地址
    栈和堆的区别:栈中的数据大小和生命周期是可以确定的,当没有引用指向数据时,这个数据就会消失。堆中的对象的由垃圾回收器负责回收
    栈的优势是,存取速度比堆要快

    展开全文
  • 创建一个 Person 类,该类中有一个类成员变量 country、一个实例变量 name 和另一个实例变量 age。 country 表示地区,name 表示姓名,age 表示年龄。 创建 3 个 Person 对象,并分别给这3个对象的属性赋值。 ...
  • 创建工程后,运行提示 Eclipse Error: Could not find or load main class [duplicate...Java中创建个类 一个java文件里面写多个class的话,这里面最多有一个public的。 而且.java的名称和public 类得名称要一致 ...
  • eclipse 中的继承创建有两种方式: 1、手动敲代码通过 extends 关键字来继承 public class A extends B { } 2、在创建类的时候就选择好继承关系 点击 Finish,就自动创建好了继承关系 package ...
  • 文章目录1 内部类的基本概念1.1 内部类的定义1.2 内部类的优缺点2 创建内部类2.1 在外部类外部创建非静态内部类2.2 在外部类外部创建静态内部类2.3 在外部...  内部类: 所谓内部类就是在一个类内部进行其他类结构...
  • 面向对象基础练习 的简单实用 案例: 学生Student 属性 count 记录创建学生个数 ... 属性 country 学生国家 ... 实例属性含有名字,年龄,性别... 创建一个私有方法study打印xx(xx为姓名): 在学习 创建...
  • 创建一个简单的表示矩形的Rectangle,满足以下条件: 1、定义两个成员变量height和width,表示矩形的长和宽,类型为整型 2、定义一个getArea方法,返回矩形的面积 3、定义一个getPerimeter方法,返回矩形的周长 4...
  • 创建一个Rectangle,添加width和height两个成员变量。  * 2.在Rectangle中添加两种方法分别计算矩形的周长和面积  * 3.编程利用Rectangle输出一个矩形的周长和面积  */ public class Rectangle {// 创建一...
  • 我所使用的环境为VS2013+UE4.9(昨天刚可以下载)打开引擎后先创建一个c++项目。用的是中文版的注意,这里有个大坑。 中文名称一定要改成英文的否则会编译不成功进入主界面后添加一个c++,并选择父类为Actor,见...
  • Hello world 文件,点击 Next 进行下一步, 4、给项目命名,默认是 untiled,自己填个名字吧,最后点击 finish 5、项目创建完成 二、创建 Java 文件: 1、点击 src——>new——>package,创建一个文件包,并给包命名...
  • 创建一个图书中包含的属性有:书名、作者、出版社;包含的方法有:设置书籍状态,查看书籍状态。书籍状态有在馆和外借两种
  • 编程创建一个 Box (长方体),在 Box 中定义三个变量,分别表示长方体的长 (length)、宽(width)和高(heigth),再定义一个方法 void setBox(int l, int w, int h) 对这 三个变量进行初始化,然后定义一个方法 int ...
  • 创建一个员工Employee,有属性:姓名name,性别sex,工龄workAge,薪水salary和奖金award,创建一个排序SortUtil,有静态方法sort(Employee[] s);方法可以对员工按年薪排升序(必须用插入排序)创建一个Test,生成5...
  • IDEA如何快速创建对应的测试

    千次阅读 2020-10-17 15:39:21
    比如我想要测试项目中的某一个类。 这边我具体到想测试CategoryServiceImpl这个类,如下图: 只需要将双击这个类,鼠标右键,然后选择go to到Test. 点击,创建测试 然后勾选你想要测试的方法 点击确定之后 测试...
  • /** 1:定义一个矩形Rectangle:(知识点:对象的创建和使用) 定义三个方法:getArea()求面积、getPer()求周长,showAll()分别在控制台输出长、宽、面积、周长。... 创建一个Rectangle对象,...
  • Python中的的定义和对象的创建

    万次阅读 多人点赞 2018-08-16 17:35:59
    面向对象中两个重要的概念: 1.类 :对一类事物的描述,是抽象的、概念上的定义。比如做石膏像的模型 ...1.创建类,类主要由类名,属性,方法组成,当然创建一个类时,属性和方法可以选择的。 cla...
  • class Student(object): count = 0 def __init__(self, name): self.name = name ...另种方式: class Student(object): count = 0 def __init__(self, name): self.name = name Student.count += 1
  • java 如何创建项目 包

    万次阅读 2018-02-15 14:44:53
    myeclipse-10创建项目 包 File----&gt;new----&gt;java project点击Finish创建Java项目右击,new下package点击Finish点击包,new下class
  • 比如说,我在A中创建了一个对象数组。想在B中去使用这个A中的数组。那么有两种方式 1 继承 直接让B去继承这个A,那么在B中就可以对这个数组...在Damo1中创建一个数组。将Child中的数组合并进去。 上面...
  • 主要处理的问题:统计一个类中创建的对象的个数 1、在类中设置一个static的int变量,每次创建一个对象时,count加1。 staic int count=0; Person(){++count;} 2、 同时要让对象的id递增,只需把count加1的...
  • C++编程语言中创建类的对象(的初始化)的方法

    万次阅读 多人点赞 2018-08-07 21:03:55
    本文主要介绍在 C++ 编程语言中,创建类的对象(的初始化)的两种方法,这两种方法分别为:“直接使用类名创建对象”和“使用 new 关键字创建对象”。 1 概述 “直接使用类名创建对象”和“使用 new 关键字创建...
  • IDEA创建类时添加注释 已有的补充注释
  • 创建一个Rectangle,添加width和height两个成员变量。  * 2.在Rectangle中添加两种方法分别计算矩形的周长和面积  * 3.编程利用Rectangle输出一个矩形的周长和面积  */ public class Rectangle {// 创建一...
  • 数具有如下形式: realPart+imaginaryPart*i。...提供一个无参构造函数,使realPart和imaginaryPart均为0;一个有参构造函数,使对象在声明时就得以初始化。提供public的成员函数:① Complex ComPlexAdd(Compl...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,357,939
精华内容 1,743,175
关键字:

如何创建一个类