精华内容
下载资源
问答
  • 2020-03-23 23:13:42

    题目描述

    定义学生类,其中包括3个成员变量(String 姓名,String 学号,float 分数),两个构造方法(一个默认的没有参数的构造方法,另一个为带三个参数姓名学号分数的构造方法用于给成员变量赋值)和show()方法。show方法用于显示每个学生类对象的成员变量信息。显示的格式为:姓名:XXX,学号:XXXX,分数:XX 分数保留一位小数。
    定义测试类,在main方法中实例化一个学生类对象,学生类对象中的成员通过键盘输入,输入的顺序为姓名 学号 分数,调用构造方法给成员变量初始化,然后调用对象的show方法输出对象信息。

    输入描述

    输入一个对象的信息,按照姓名 学号 成绩

    输出描述

    输出姓名:XXX 学号:XXX 分数:XX
    其中冒号为中文冒号,每项中间一个空格。

    输入样例

    张三 10001 90

    输出样例

    姓名:张三 学号:10001 分数:90.0

    import java.util.*;
    public class Main{
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		Student a = new Student(sc.next(), sc.next(), sc.nextDouble());
    		a.show();
    		sc.close();
    	}
    }
    
    class Student{
    	String name;
    	String id;
    	double score;
    	public Student(String name, String id, double score) {
    		this.name = name;
    		this.id = id;
    		this.score = score;
    	}
    	void show() {
    		System.out.println("姓名:" + this.name + " " + "学号:" +  this.id + " " + "分数:" + this.score);
    	}
    	
    	
    }
    
    
    更多相关内容
  • 定义一个Box(盒子)类,在该类定义中包括数据成员: length(长),width(宽)和height(定义一个Box(盒子)类,在该类定义中包括数据成员: length(长),width(宽)和height(定义一个Box(盒子)类,在该类定义中包括数据成员: ...

    定义一个Box(盒子)类,在该类定义中包括数据成员: length(长),width(宽)和height(

    定义一个Box(盒子)类,在该类定义中包括数据成员: length(长),width(宽)和height(

    定义一个Box(盒子)类,在该类定义中包括数据成员: length(长)、width(宽)和height(高);成员函数: 构造函数Box,设置盒子长、宽和高三个初始数据;用函数volume 计算并输出盒子的体积.在main函数中,要求创建Box对象,并求盒子的体积.

    int main()

    {

    Box b1,b2(2,3,4);

    float v1,v2;

    v1 = b1.GetVolume();

    v2 = b2.GetVolume();

    if (v1>v2)

    cout<

    else

    cout<

    return 0;

    }

    人气:747 ℃时间:2020-04-26 06:51:23

    优质解答

    #include 

    using namespace std;

    class Box {

    \x09float length, width, height;

    public:

    \x09Box(float l, float w, float h);

    \x09float GetVolume() const;

    };

    Box::Box(float l = 1, float w = 1, float h = 1)

    \x09: length(l), width(w), height(h) {}

    float Box::GetVolume() const {

    \x09return height * width * length;

    }

    int main()

    {

    \x09Box b1, b2(2, 3, 4);

    \x09float v1, v2;

    \x09v1 = b1.GetVolume();

    \x09v2 = b2.GetVolume();

    \x09if (v1>v2)

    \x09\x09cout <

    \x09else

    \x09\x09cout <

    \x09return 0;

    }Box b1, b2(2, 3, 4);

    这行有错哎~error C2512: 'Box' : no appropriate default constructor available

    怎么改呢???#include 

    using namespace std;

    class Box {

    \x09float length, width, height;

    public:

    \x09Box();

    \x09Box(float l, float w, float h);

    \x09float GetVolume() const;

    };

    Box::Box() : length(1), width(1), height(1) {}

    Box::Box(float l, float w, float h)

    : length(l), width(w), height(h) {}

    float Box::GetVolume() const {

    \x09return height * width * length;

    }

    int main()

    {

    \x09Box b1, b2(2, 3, 4);

    \x09float v1, v2;

    \x09v1 = b1.GetVolume();

    \x09v2 = b2.GetVolume();

    \x09if (v1>v2)

    \x09\x09cout <

    \x09else

    \x09\x09cout <

    \x09return 0;

    }

    我来回答

    类似推荐

    展开全文
  • Python类定义字类变量与实例变量

    万次阅读 2018-01-19 11:02:01
    学过JAVA或C++等语言的程序员再去学Python设计时感觉非常不适应,因为Python是在太自由了,让人无所适从,来python定义类时的变量来说,其定义方式、作用域、操作方法都与上述两种语言有更大的可操作空间。...

    学过JAVA或C++等语言的程序员再去学Python类设计时感觉非常不适应,因为Python是在太自由了,让人无所适从,来python定义类时的变量来说,其定义方式、作用域、操作方法都与上述两种语言有更大的可操作空间。

    Python类中定义的变量分为类变量和实例变量(也叫成员变量、对象变量),类变量直接定义在类里面(不在函数里面),前面不会有一个self修饰;相反,实例变量大都定义在实例函数里面,通过“self.变量名”的方式进行定义。当然,也有例外,应该类变量和实例变量都可以在类定义之后在定义(这个功能让我目瞪口呆)。

    一、类变量及实例变量的定义

    先看看正常的:

    class Person():
        person = 'alive' #这是类变量
        def __init__(self,name ,age):
            self.name = name #这是实例变量
            self.age = age   #这是实例变量
            self.gender = '男' #这是实例变量
            #a = 456     #不能写这里,会出错
        place = ['地球','中国'] #这是类变量

    从上述代码也可以看出,Python定义类时,不对定义类变量与实例变量之间的顺序做出约束,也可以看出类变量不能定义在函数体里面。

    再来看看返厂的,也就是在类定义之后在定义变量:

    class Student():#创建一个空的类
        pass
    
    #Student
    s1 = Student()
    #为p1添加一个name属性
    s1.name = 'chb' #这个name属性是一个实例变量
    print(s1.name) #输出结果:chb
    #为Person类添加一个类变量
    Student.behavior = 'study' #这是一个类变量
    print(Student.behavior)#输出结果:study
    print(s1.behavior)#输出结果:study

    所以说,Python类的定义是很自由的,对于变量,既可以在定义类时定义,也可以在类定义完成之后定义。上述两块代码讲述了类变量和实例变量在定义上面的区别。下面说说类变量与实例变量在使用上的区别。

    二、类变量与实力变量的使用

    结合上述第一个代码块中定义的Person类进行说明。

    1. 类变量可以通过“类名.类变量名”、“实例名.类变量名”两种方式读取,即类和实例都能读取类变量。

    if __name__=="__main__":
        p = Person('chb' , 18)
        print(Person.person)#输出结果:alive
        print(p.person)     #输出结果:alive

    2实例变量只能通过“实例名.实例变量名”的方式访问,类无权访问实例名。

    if __name__=="__main__":
        p = Person('chb' , 18)
        print(p.name)#输出结果:chb
        print(Person.name)     #错误:AttributeError: type object 'Person' has no attribute 'name'

    3. “类名.类变量名”、“实例名.类变量名”访问的实际上是同一个命名空间的变量,所以类变量具有“一改全改”的特点。

    if __name__=="__main__":
        p = Person('chb' , 18)
        Person.person = 'die'
        print(p.person)#输出结果:die
        print(Person.person#输出结果:die

    4. 采用‘实例名.类变量名’的方式对类变量进行赋值时,若该类变量是可变数据类型,则可以成功赋值该类变量,否则会在该实例变量所在的名称空间中创建一个与该类变量同名的实例变量进行赋值,并不会对类变量进行赋值,此时也无法再通过‘实例名.类变量名’的方式读取该类变量。但若‘实例名.类变量名’赋值的是可变数据类型,则可以对类变量进行赋值操作。

    if __name__=="__main__":
        p = Person('chb' , 18)
        p.person = 'die'
        print(p.person)#输出结果:die
        print(p.__dict__)#输出结果:{'gender': '男', 'person': 'die', 'age': 18, 'name': 'chb'}
        print(Person.person#输出结果:alive
        p.place[1] = '北京'
        print(p.place)#输出结果:['北京' , '北京']
        print(Person.place)#输出结果:['北京' , '北京']

     

     

    展开全文
  • 定义声明和体。基本格式如下: class 类名{ 体 } 特点: 1、是Java程序的基本要素,一个Java应用程序就是由若干个所构成; 2、声明的变量称为对象变量,也简称 对象 ; 3、class 关键字是...

    编程语言的三大发展阶段:面向机器语言、面向过程语言、面向对象语言 ;

    其中面向对象语言主要体现三个特征:封装性、继承、动态 ;

    类的定义:类声明和类体。基本格式如下:

    class 类名{

       类体

    }

    特点:

    1、类是Java程序的基本要素,一个Java应用程序就是由若干个类所构成;

    2、类声明的变量称为对象变量,也简称 对象 ;

    3、class 关键字是用来定义类 ;

    4、类的目的是抽象出一类事物共有的属性和行为,并用一定的语法格式来描述所抽象出的属性和行为;

    4、类名必须是合法的Java标识符;

    Java标识符详细说明:(以及中文标识符的说明)

    https://blog.csdn.net/LagerSwan/article/details/104081548


    类的声明:

    如下所示:

    class Number {

    .....

    }

    class 数字 {

    .....

    }

    其中 class Number 与 class 数字 称为类的声明,而 Number 和 数字 则为类名 ;


    类体,即 { } 中的内容:

    类体的内容由如下两部分构成:

    • 变量的声明:用来存储属性的值 ;(体现了对象的属性)
    • 方法的定义:方法可以对类中声明的变量进行操作;(体现了对象的行为)

    如下代码演示:

    public class Class_Test {
    	int number = 10;
    	double numberd = 11.111;
    	double TestDouble() {
    		double numbers = 100 ;
    		numbers += numberd;
    		return numbers;
    	}
    	public static void main(String[] args) {
    		Class_Test test = new Class_Test();
    		System.out.println(test.TestDouble());
    	}
    }

    在以上代码中,声明了一个类 Class_Test ,两个变量 number 与 numberd ,一个方法 TestDouble() ,一个主方法 main () ;


    成员变量的定义:

    一、成员变量的类型:

    成员变量的类型可以是Java中的任何一种数据类型,包括了基本数据类型:整形、浮点型、逻辑类型、字符类型 ;引用类型中的:数组、对象和接口;  

    如下代码演示:

    public class Class_Test {
    
    	public static void main(String[] args) {
    		
    		//成员变量的说明
    		//基本数据类型的成员变量
    		int testt = 11 ;
    		float testf = 11.111f ;
    		double testd = 11.11111 ;
    		//引用类型的变量
    		int a [] ;
    		Class_Test test ;
    		
    	}
    }

    在以上代码中,成员变量:testt,testf,testd 是基本数据类型的变量;a [ ] ,test是引用类型的变量,a [ ] 为数组的变量,test 为类声明的变量,即类对象;

    二、成员变量的有效范围:

    成员变量在整个类内都是有效的,其有效性与它在类体中声明的先后位置是不关的;

    如下代码演示:   最终输出: 110

    public class Class_Test {
    	
    	//成员变量的有效范围:
    	int number = 11 ;
    	int Int_Test(){
    		int int1 = number * digit ;
    		return int1;
    	}
    	int digit = 10 ;
    
    	public static void main(String[] args) {
    		//类体的说明
    		Class_Test test = new Class_Test();
    		System.out.println(test.Int_Test());	
    	}
    }
    

    不建议大家这样编写程序,当代码量多时,对代码的可读性有一定的影响,建议先声明成员变量,再定义方法;

    三、成员变量的编写风格:

    建议大家在声明成员变量时,变量的名字使用驼峰规则,即变量名由多个单词组成时,从第二个单词开始的其他单词的首字母大学;如:computerArea 、ClassExceptionShow 


    方法的使用:

    在类体中,方法的定义包括两部分:方法头、方法体 ;  一般格式如下:

    方法头 {

       方法体

    }

    一、方法头说明

    方法头由方法的类型、名称、名称后面的 () 以及 ()里面的参数列表所构成;

    如下代码演示:

    //无参数的方法头
    double testd (){
        return 11.111;
    }
    
    //有参数的方法头, x 和 y 即为参数
    double testd (double x,double y){
        return x+y;
    }

    二、方法体说明:

    方法体即 方法()后面的 { } 以及 { } 里面的内容;

    在方法体中声明的变量为局部变量,而不是成员变量,局部变量只在方法体内有效,而且与声明时的前后位置有关;

    如下代码演示:

    double testd = 10 ;
    double testd (double x,double y){      //参数 x,y是局部变量
       double sum;                         //参数 sum 是局部变量
       sum = x + y ;
    
       if(sum>x){
           sum += testd ;         //参数 testd 是成员变量(全局变量)
    }
    
        return sum;        //return 语句,返回 sum 的值
    }

    局部变量的介绍:

    1、局部变量不同与成员变量,局部变量只在方法中有效,而且与其声明的位置顺序有关;

    2、若局部变量声明在一个复合语句中,那么该局部变量的有效范围只在复合语句中有效;

    double testd (double x,double y){      //参数 x,y是局部变量
    	   double sum;                         //参数 sum 是局部变量
    	   sum = x + y ;
    	   if(sum != 0){
    	       int ints = 1;        // ints 为复合语句中的局部变量
    	       sum += ints ;
    	}
            double bottom = 1.1;
            bottom += ints ;         //程序报错:ints cannot be resolved to a variable
    	    return sum;
    	}

    3、若局部变量声明在一个循环语句中,那么该局部变量的有效范围只在循环语句中有效;和以上复合语句是一样的;


    总结:成员变量与局部变量的区别

    1、局部变量不同与成员变量,局部变量只在方法中有效,而成员变量在整个类中都有效;

    2、局部变量与其声明的位置顺序有关,而成员变量与其声明的位置顺序无关;

    3、若局部变量的名字和成员变量的名字相同,那么成员变量会被隐藏,即在方法体中成员变量暂时是无效的,如下代码演示:

    class Test_Variable {
        int x = 10 , y ;
       void tests () {
          int x = 5 ;
          y = x + 10 ; //y的值为 15 ,而不是20,此时成员变量 x = 10 在该方法体中,暂时失效;
       }
    
    }

    4、当想使用方法中被隐藏的成员变量,可以使用关键字 this 进行调用,如下代码演示:

    class Test_Variable {
        int x = 10 , y ;
       void tests () {
          int x = 5 ;
          y = this.x + 10 ; //此时 y 的值为 20 ,而不是15,this.x调用的为成员变量 x = 10 ;
       }
    
    }

    5、成员变量有默认值,而局部变量没有默认值,因此在使用局部变量时,要确保该局部变量是有初始值的,否则程序报错;

    class Test_Variable {
    
               int  y ;
    	   void tests () {
    	      int x;       //报错:The local variable x may not have been initialized
    	      y = x + 10 ; 
    	   }
    
    }

     

     

     

    展开全文
  • 类定义和类实现的分离

    千次阅读 2019-01-16 19:56:59
    类定义描述了类的“约定”,而类实现则实现了这一约定。类定义简单地列出所有数据域、构造函数原型和函数原型,类实现给出构造函数和成员函数的实现。 两者可以置于分离的文件中,两个文件应该使用相同的名字,但...
  • 抽象类定义

    千次阅读 2017-05-26 15:40:25
    抽象类定义  普通类可以直接产生实例化对象,并且在普通类中可以包含构造方法、普通方法、static 方法、常量、变量的内容。而所谓抽象类就是指在普通类的结构里面增加抽象方法的组成部分,抽象方法指的是没有...
  • 定义一个Student类,在该类定义中包括:两个数据成员name(学生姓名)和score(分数);两个静态数据成员total(总分)和count(学生人数)。成员函数scoretotalcount(float s)用于设置每个学生的分数;静态成员...
  • 抽象类定义?为什么要使用抽象类?

    千次阅读 2018-07-16 20:18:15
    为什么要使用抽象? 有什么好处? 答案:1 现实中一些父类中的方法没必要写 各个子类中的方法会有所不同 所以没必要在父类中写 2 看被人代码时候会注意这是抽象方法...5 含有抽象方法的必须定义为抽象 ...
  • 定义

    千次阅读 多人点赞 2021-03-05 15:06:08
    定义类 定义类 C++语言——面对对象的程序设计思想 实现软件设计的产业化 自然界是由实体(对象)组成的 抽象: 对具体对象(问题)进行概况,抽出这一对象的公共性质加以描述的过程 (1)数据抽象 (2)行为...
  • using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; ...namespace Console...不能理解静态函数中,用自身类定义类内的函数,应该怎么理解?
  • 头文件为什么只声明而不定义,而类定义又可以在头文件中那???   了解基本的概念: 编译单元:对于c语言,每一个.c文件就是一个编译单元。仅从编译而言,各个编译单元之间没有联系。 未解决符号表:提供了在...
  • 定义一个圆Circle1,它有一个变量radius(半径)、若干个构造函数和一个求圆的面积的方法。 在主类test的main()方法中随机生成一个100以内的整数,通过构造函数的参数传递给radius,调用圆circle中的方法计算并...
  • 最重要的,也是老师在这堂课上展示出来的,就是在出现组合这种情况,也就是里面的数据成员使用了其他的对象的时候,如果不采用这种形式,就需要考虑很多哪个放在前面这一的问题,非常麻烦。 老师上课讲...
  • 为了在程序中创建对象,首先需要定义一个是对象的抽象,它用于描述一组对象的共同特征和行为,例如人都有姓名、年龄、性别等特征,还有学习、工作、购物等行为。以面向对象的编程思想,就可以将某一中共同的...
  • scala 类定义构造函数与继承

    千次阅读 2016-11-09 23:52:04
    1.scala中如何定义类scala中定义类的方式很简单class Point(xc:Int,yc:Int)上面这行代码就定义了一个 1.首先是关键字class 2.其后是类名 Point 3.类名之后的括号中是构造函数的参数列表,这个例子中是的两个...
  • C++中的——定义和声明

    万次阅读 多人点赞 2018-08-23 10:49:04
    面向对象最大的特征就是提出了和对象的概念。在以面向对象的方式开发应用程序时,将...一、定义 class/struct 类名 //头 {数据和方法的定义(可能含有类型成员)}; //体 1、使用class和struct的...
  • 可以用一个抽象类定义一个指向该类的指针,但是不能定义或声明对象。 这个中原因就是,定义一个类的对象是,编译器在编译时需要了解类的所有信息以便准确的为要实例化的对象分配内存;由此可见,定义一个类对象是要...
  • 1.将类定义放在头文件arraymax.h中; 2.将成员函数定义放在源文件arraymax.cpp中; 3.主函数放在源文件file1.cpp中。 代码块: arraymax.h头文件 class Array { public: void set_...
  • 习题 8.4 在本章第8.3.3节中分别给出了包含类定义的头文件student.h,包含成员函数定义的源文件student.cpp以及包含主函数的源文件main.cpp。请完善该程序,在类中增加一个对数据成员赋初值的成员函数set_value。...
  • #include #include using namespace std; class Book { public: Book(string name,int p,int n);//构造函数 void borrow();//借书 void restore();//还书 void disp();//显示剩余产品数量 private: ......
  • python中class 类定义与使用

    千次阅读 多人点赞 2020-02-02 19:40:08
    python中class 类定义与使用 在学习python中类这一部分也是非常常用的,类的定义类似于函数却又不同于函数,class 定义一个类, 后面的类别首字母推荐以大写的形式定义,比如Calculator. class可以先定义自己的属性...
  • Matlab中的类定义 classdef

    万次阅读 多人点赞 2016-03-19 23:21:58
    Matlab也可以写面向对象的代码,首先表现在可以定义类,以及可以继承,使用(class)有很多好处,其中一个重要的好处便是解决变量名冲突和让函数、对象的结构清晰。class的static function可以在不定义类的实例...
  • Java手机类定义

    千次阅读 2020-01-03 11:24:55
    加粗样式 package lesson02; public class demo01 { public static void main(String[] args) { // TODO Auto-generated method stub Phone ph1 = new Phone(); //给属性赋值 ph1.brand = "苹果";...
  • 编写一个student 定义私有数据成员name,id,age分别用于表示姓名,学号,年龄。 完成构造函数的重载,使用不同的构造函数创建不同的对象。 完成拷贝构造函数的定义 string 类型的数据成员 /*数据成员是string...
  • CPP-类定义(Class definitions)

    千次阅读 2015-09-19 03:59:16
    仅有的差别是放在定义里面。同样数据成员的declaration和普通变量也一样,只是放在定义里面。保留字public和private用来实现信息隐藏。public暗示被宣称的属性在定义的后续部分是可见的。即到处都可获得...
  • 一、定义和声明 1) 定义就是声明,声明... 定义是直接说已经定义了,非定义声明,是间接说已经定义了。  声明,不需要明白告诉你,定义成什么样子,你懂得就行。  定义,必须清晰,不能含糊,因为要分配空间。
  • python定义与实例化

    千次阅读 2020-11-03 22:42:48
    定义与实例化 在Python中,通过class关键字定义一个,比如我们需要定义一个人的。按照 Python 的编程习惯,类名以大写字母开头。因此可以这样定义: class Person: pass 注意,在这个Person定义里面,...
  • java定义类的格式是什么

    千次阅读 2021-03-01 11:04:54
    java定义类的格式是什么发布时间:2020-06-29 11:14:51来源:亿速云阅读:166作者:Leahjava定义类的格式是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人...
  • python中怎么定义一个

    千次阅读 2020-12-28 20:21:23
    定义类,语法格式如下:class ClassName:...python中使用class关键字来定义类的命名规则是每个单词的首字母都要大写。对象对象支持两种操作:属性引用和实例化。属性引用使用和 Python 中所有的属性引用一样...
  • C#泛型类定义和泛型方法定义

    千次阅读 2018-11-24 01:45:00
    泛型类定义 定义一个泛型类就是指的是,定义一个类,这个类中某些字段的类型是不确定的,这些类型可以在类构造的时候确定下来,举例: class ClassA&amp;lt;T&amp;gt;{ private T a; private T b; public ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,075,531
精华内容 2,030,212
关键字:

类的定义