构造函数demo

package cn.xuexi;
/*
 * 简单的写了一个构造函数的类
 * 总结一下构造函数的坑
 * 1、构造函数的名字必须与类型保持一致
 * 2、构造函数不能有任何返回值类型的修饰,void也不行
 * 3、构造函数中不能使用return 语句
 */
public class GouZaoDemo {
public static void main(String[] args) {
    personii p = new personii("hgu",78);
    p.tellme();

}
}
 class personii{
    private String name;
    private int age;
    public void setname(String name)
    {
        this.name = name;
    }
    public void setage(int age)
    {
        this.age = age;
    }
    public String getname()
    {
        return name;
    }
    public int getage()
    {
        return age;
    }
    public personii(String name,int age)
    {
        this.setname(name);  //为类属性name 赋值
        this.setage(age);    //为类属性 age 赋值
    }
    public void tellme()
    {
        System.out.println(this.getname()+this.getage());
    }
}
时间: 2024-10-22 10:30:53

构造函数demo的相关文章

C++文件头,命名空间,new和delete,内联函数,引用,函数重载,构造函数和析构函数,深拷贝和浅拷贝,explict,this指针

 目  录 1       开始学习C++.............................................................................................................. 4 1.1       C++的头文件.................................................................................................

《JAVA学习笔记(1---13-4)》

[1]问题: 1.什么叫做面向过程? 2.什么叫做面向对象? 解答: 1: 所谓的面向过程就是我们是一个执行者,我们要开发一个项目,这个项目要求要实现很多功能,作为执行者的我们就需要 去一个一个的找这些功能,然后组装,最后形成一个产品. 此时的我们是站在执行者这个立场上的. 2: 而所谓的面向对象呢,就是我们是站在指挥者这个立场上的. 首先(1)面向对象是一种符合人们思考习惯的思想 (2)面向过程更多的体现的是执行者,在面向对象中更多的是体现指挥者,指挥对象做事情.(3)面向对象把复杂问 简单化

Java基础整理(二)

流程控制.异常处理和断言. switch表达式必须是byte.short.int或者char类型,而不是布尔变量. Java的循环语句有for while 和 do..while:while是先判断,do..while是即使是条件表达式为假,循环体至少也执行一次.do..在编制菜单选择时非常有效.for循环的执行过程:[1]执行init部分[2]执行condition部分 真->执行循环体: 假->循环终止[3]增加或者减少循环控制变量的值[4]重复执行 [2]. break和continue

第50课 C++对象模型分析(上)

1. 回归本质 (1)class是一种特殊的结构体 ①在内存中class依旧可以看作变量的集合 ②class与struct遵循相同的内存对齐规则 ③class中的成员函数与成员变量是分开存放的.即每个对象有独立的成员变量,但所有对象共享类中的成员函数. [编程实验]对象内存布局初探 #include <iostream> #include <string> using namespace std; class A { //默认访问权限为private int i; int j; c

右值引用,转移语义与完美转发

1. 左值与右值: C++对于左值和右值没有标准定义,但是有一个被广泛认同的说法:可以取地址的,有名字的,非临时的就是左值;不能取地址的,没有名字的,临时的就是右值. 可见立即数,函数返回的值等都是右值;而对象(包括变量),函数返回的引用,const对象等都是左值. 从本质上理解,创建和销毁由编译器幕后控制的,程序员只能确保在本行代码有效的,就是右值(包括立即数);而用户创建的,通过作用域规则可知其生存期的,就是左值(包括函数返回的局部变量的引用以及const对象),例如: int& foo()

属性特征

1. 简介 JS 的对象是一组无序属性的集合.那么对于这组无序属性来说,拥有哪些特性呢?ECMAScrip5 中定义了属性的这些特性,但这些特性是为了实现 JS 引擎用的,在 JS 中无法直接来访问它们.为了表示这些特性是内部值,这些特性被放在两对方括号中.例如 [[Enumerable]]. ECMAScript 中有两种属性:数据属性和访问器属性. 2. 数据属性和访问器属性 2.1 数据属性 数据属性包含一个数据值的位置,在这个位置可以读取和写入值.数据属性有 4 个描述其行为的特性. 可

c++构造顺序

1. 静态成员最先构造,按照静态成员初始化顺序,不是类里面的声明顺序 2. 父类构造 3. 非静态成员构造,按照类成员声明顺序,不是逗号初始化成员顺序 4. 自身构造函数 Demo: class TestA { public: TestA(){ std::cout << "TestA()" << std::endl; } }; class TestB { public: TestB(int b) { std::cout << "TestB(

C++程序设计方法3:移动构造函数

移动拷贝构造函数 语法: ClassName(ClassName&&); 目的: 用来偷"临时变量"中的资源(比如内存) 临时变量被编译器设置为常量形式,使用拷贝构造函数无法将资源偷出来("偷"是对原来对象的一种改动,违反常量的限制) 基于"右值引用"定义的移动构造函数支持接受临时变量,能偷出临时变量中的资源: #include <iostream> using namespace std; class Test {

javascript 构造函数中的属性与原型上属性优先级的比较

备注: 下面这个问题是我前天看书上发现的. 按照我以前的理解, a.rename()这个方法传什么值,结果都会弹出 小a,但我看书上的demo 弹出的是大A.... 我的困惑是:  js的构造函数中的属性与方法, 不是比原型对象上的属性与方法优先级要高吗?为什么会弹出的是大A? PS: 小弟很想有人能用通俗易通的语言, 简单的描述下,为什么会弹出的是 A, 而不是小 a.在此谢谢了  function F(name) { this.name = name; } var a = new F("a&