Scala中的主构造器跟在定义类的时候声明类名之后

如下:

class scala(arg : String) {

  //

}

private[this] 修饰该字段只能被当前所对应的对象所访问,其他对象无法访问,即使该对象是同种类型(Teacher),如果想让同类之间可以相互访问,把this换成类名即可。

def this()定义的是附属构造器,附属构造器一般都会调用this主构造器。

构造器重载,可以在class Teacher后面加上parivate将主构造器声明未私有,这样构造类的时候,只能通过附属构造器。

更多的类权限访问还有public, protected

Scala主构造器、私有构造器、构造器重载的更多相关文章

  1. Effective Java - 构造器私有、枚举和单例

    目录 饿汉式单例 静态常量 静态代码块 懒汉式单例 尝试加锁 同步代码块 双重检查 静态内部类单例 枚举单例 Singleton 是指仅仅被实例化一次的类.Singleton代表了无状态的对象像是方法 ...

  2. Java的初始化执行顺序(父类static变量->子类static变量->父类成员变量->父类构造器->成员变量->构造器->main函数)

    1. 引言 了解Java初始化的顺序,有助于理解Java的初始化机制和内存机制. 顺序:父类static变量->子类static变量->父类成员变量->父类构造器->成员变量- ...

  3. scala 学习笔记(04) OOP(上)主从构造器/私有属性/伴生对象(单例静态类)/apply方法/嵌套类

    一.主从构造器 java中构造函数没有主.从之分,只有构造器重载,但在scala中,每个类都有一个主构造器,在定义class时,如果啥也没写,默认有一个xxx()的主构造器 class Person ...

  4. 【Scala】通过简洁代码搞明白伴生关系、主构造器和辅助构造器的关系

    /** * 主构造器直接定义在类名称的后面,参数列表和类名写在一起 * 主构造器的参数会自动提升为对象的属性,不需要在对象中重新定义一遍 */ class Student(val id: Int, n ...

  5. Scala主构造器参数是否升级为成员与是否有get/set

    1:主构造器前面添加val/var 关键字则升级为类成员,否则只是构造器中的一个参数而已. 2:private 修饰get/set方法权限,private var/val 成员变量,则有get/set ...

  6. Scala基础:类和构造器

    类 package com.zy.scala.cls /** * 在 Scala 中,类并不用声明为 public 类型的. * Scala 源文件中可以包含多个类,所有这些类都具有共有可见性. */ ...

  7. Constructor Overloading in Java with examples 构造方法重载 Default constructor 默认构造器 缺省构造器 创建对象 类实例化

    Providing Constructors for Your Classes (The Java™ Tutorials > Learning the Java Language > Cl ...

  8. java之子类继承抽象类,子类构造器调用抽象类构造器问题

    package com.wtd; public abstract class Car { private String name= "car"; public Car(String ...

  9. jnhs-java实体类的有参构造器 无参构造器Could not instantiate bean class 实体类No default constructor found

    new一个对象的时候要用到构造函数, 例如Hello hello = new Hello();这时调用的是Hello的无参数构造方法; Hello hello = new Hello("hi ...

随机推荐

  1. 百度地图SDk 使用

    第一步: 获取密钥 应用名称可以随便填写 发布版SHA1  的获取要在 keytool -v -list -keystore: C:\Users\admin\.android\debug.keysto ...

  2. Oracle的关于建表,约束,查询等的练习

    从建立一个简单表,到实现一些复杂查询的例子, DROP TABLE grade;DROP TABLE item;DROP TABLE sporter;CREATE TABLE sporter( spo ...

  3. JS判断表单内容是否更改过

    1,根据具体标签判断 function JudgesubmitForm() { var judjeWs = false; var judjeAt = false; var judjeWd = fals ...

  4. java 类访问权限

    Java有四种访问权限, 其中三种有访问权限修饰符,分别为private,public和protected,还有一种不带任何修饰符. private: Java语言中对访问权限限制的最窄的修饰符,一般 ...

  5. HDU 1021 - Fibonacci Again

    找规律,分析让 F[N] 每一项对 3 取余的余数: 1,2,0, 2,2,1,0, 1,1,2,0, 2,2,1,0, 1,1,2,0, 2,2,1,0 ......... 显然循环了 #inclu ...

  6. [Linked List]Remove Linked List Elements

    Total Accepted: 43183 Total Submissions: 160460 Difficulty: Easy Remove all elements from a linked l ...

  7. eclipse 使用maven 创建纯spring mvc项目

    接着eclipse 使用maven 创建web3.1项目 创建完成后, 讲spring mvc加入到项目中 先修改pom.xml文件 注意红色字部分 <project xmlns="h ...

  8. linux 下访问mysql

    1:先进到root:/# /usr/local/mysql/bin/2:root:/# mysql -u root -p     Enter password:

  9. EditPlus 快速去重

  10. LPC基础教程-Lpc程序和编程环境 mudos 加载原理

    编程环境 通常我们所见到的Mud大多是LpMud.LpMuds使用Unix的指令和文件结构.如果你对Unix有所了解,那么LpMud中的一些指令和它的文件结构与普通的Unix基本一样.如果你从未使用过 ...