import scala.collection.mutable.ArrayBuffer

/**
* scala 中内部类的使用
*/
class Classes { class Stu(name:String , age:Int) {}
val stus = new ArrayBuffer[Stu]
def getStu(name:String) = {
new Stu(name , 0)
}
} object ClazTest{ def main(args: Array[String]): Unit = {
// 需要注意
val c1 = new Classes
val stu1 =c1.getStu("yxj")
c1.stus += stu1 println(stu1) val c2 = new Classes
val stu2 = c2.getStu("yxj")
c2.stus += stu2 println(stu2)
// 下面将类stu1添加到c2中是不允许的,会报错
// c2.stus += stu1
// 他们toString时打印的hashcode是不同的
// classes.Classes$Stu@5c7fa833
//classes.Classes$Stu@39aeed2f } }

  

/**
* scala 中类的使用
*/
class HelloWorld { var sex = "" private var name = "yxj"
def sayHello(): Unit ={
println("hello " + name)
} def getName = name } object HelloTest { def main(args: Array[String]): Unit = {
val hello = new HelloWorld
hello.sayHello() hello.sex = "male";
println(hello.sex) val s1 = new Student
s1.age = 30
val s2 = new Student
s2.age = 20
println(s1.older(s2)) // 返回true // 使用 private[this] myage 只能在本类中使用, } }

  

class Student {

  private var myAge = 0

  def age_=(newAge : Int): Unit ={
if(newAge > myAge) myAge = newAge
else println("illegal age!!!")
} def age = myAge def older(s : Student) = {
myAge > s.myAge
} }

  

import scala.beans.BeanProperty

class LikeJavaClaz {
@BeanProperty var name = "" } object LikeJavaClazTest { def main(args: Array[String]): Unit = {
val likeJavaClaz = new LikeJavaClaz
likeJavaClaz.setName("yexj") println(likeJavaClaz.name)
println(likeJavaClaz.getName) } }

  

scala中类的简单使用记录的更多相关文章

  1. scala中函数简单使用记录

    object funcHighLevel { def main(args: Array[String]): Unit = { // 创建一个匿名函数 val sayFunc = (name: Stri ...

  2. 如果简单的记录,就可以为这个世界创造更多的财富,那么还有什么理由不去写博客呢? — 读<<黑客与画家>> 有感

    上一次博文发文时间是2016.1.15,7个月已经过去了.最近读了一本<>的书,对我触动挺大的!里面有关于技术趋势的探讨,也有关于人生和财富的思考! 开始更新iOS122的文章的初衷是,聚 ...

  3. Python简单爬虫记录

    为了避免自己忘了Python的爬虫相关知识和流程,下面简单的记录一下爬虫的基本要求和编程问题!! 简单了解了一下,爬虫的方法很多,我简单的使用了已经做好的库requests来获取网页信息和Beauti ...

  4. redis5.0.3单实例简单安装记录

    redis5.0.3单实例简单安装记录 日常需要测试使用,索性记录下来,免得临时又麻烦的找资料. yum -y install make gcc-c++ cmake bison-devel ncurs ...

  5. Oracle触发器简单入门记录

    写在前面: 最近,老项目新增了日报优化的需求,丽姐让我用触发器去实现当数据插入或者更新的时候,实现对日报表数据更新操作.嗯嗯嗯呢,之前学习数据库的时候,有碰到过触发器,但都是一跳而过,也没怎么去真正的 ...

  6. 27:简单错误记录SimpleErrorLog

    题目描述 开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号. 处理: 1. 记录最多8条错误记录,循环记录,对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加: ...

  7. percona-toolkit 3.0.13 简单安装记录

    percona-toolkit 3.0.13 简单安装记录 环境:centos6.x mysql:8.0.17 yum -y install perl-DBIyum -y install perl-D ...

  8. scala中Tuple简单使用

    /** * Tuple简单使用记录 * 最大22个参数 */ object TupleUse { def main(args: Array[String]): Unit = { // 简单Tuple ...

  9. jdb调试scala代码的简单介绍

    在linux调试C/C++的代码需要通过gdb,调试java代码呢?那就需要用到jdb工具了.关于jdb的用法在网上大家都可以找到相应的文章,但是对scala进行调试的就比较少了.其实调试的大致流程都 ...

随机推荐

  1. 微信小程序开发显示城市天气

    本案例实现动态显示城市天气的功能,案例效果如下: 首先分析制作的思路: 1.在app.json文件的pages数组里加上main文件夹和template(模板)文件夹的路径. 2.在main.js文件 ...

  2. Go学习笔记:初识Go语言

    Go语言简介 Go语言是Google(谷歌)公司开发的一款静态型.编译型并自带垃圾回收机制和并发的编程语言. Go语言的风格类似于C语言.其语法在C语言的基础上进行了大幅的简化,去掉了不需要的表达式括 ...

  3. 使用dd生成文件

    使用dd命令快速生成大文件或者小文件的方法     转载自:http://blog.csdn.net/cywosp/article/details/9674757     在程序的测试中有些场景需要大 ...

  4. 修改docker镜像地址

    vim /etc/docker/daemon.json,使用国内加速站点镜像 https://registry.docker-cn.com http://hub-mirror.c.163.com ht ...

  5. python_django_静态文件

    什么是静态文件? 是django中用于存放css,js,图片,json文件,字体文件等的文件,使代码更好管理. 1.配置 https://www.cnblogs.com/Vera-y/p/114923 ...

  6. 关于h5打包后 wag包无法安装的问题

    如果不是逻辑错误,那么有可能是下列三种情况之一, 1 wgt打包时的appid与安装包不符 2 打包wgt文件和打包安装包文件 用的不是同一个HBuilder账户 3 安装包打包时权限配置,和wgt包 ...

  7. idea bug解决

    1.编译时错误:软件包 javax.servlet.http 不存在import javax.servlet.http.HttpServletRequest 解决办法:把servlet-api.jar ...

  8. C/C++ warning C4251: class ... 需要有 dll 接口由 class“..” 的客户端使用

    { 在DLL编程中, 如果调用模版类, 则可能出现类似以下的错误: 1>xclock.h(29): warning C4251: “XClock::m_FileName”: class“std: ...

  9. Java中的线程Thread方法之---interrupt()

    前几篇都介绍了Thread中的几个方法,相信大家都发现一个相似点,那就是sleep,join,wait这样的阻塞方法都必须捕获一个InterruptedException异常,顾名思义就是一个线程中断 ...

  10. 57 CUDA 编程入门

    0 引言 由于毕设用到了Marvin,采用的是CUDA框架作为加速器,正好借此学习一下CUDA编程的一些基本知识. 各个版本的cuda的下载链接如下. https://developer.nvidia ...