当前位置: 首页 > news >正文

建设学院网站意义广东建设信息网三库一平台官网

建设学院网站意义,广东建设信息网三库一平台官网,物流网络化,网站建立之间不安全如何解决目录 Scala包#xff1a; 基础语法#xff1a; Scala包的三大作用#xff1a; 包名的命名规范#xff1a; 写包的好处#xff1a; 包对象#xff1a; 导包说明#xff1a; 类和对象#xff1a; 定义类#xff1a; 封装#xff1a; 构造器#xff1a; 主从… 目录 Scala包 基础语法 Scala包的三大作用 包名的命名规范 写包的好处 包对象 导包说明 类和对象 定义类 封装 构造器 主从构造器的加载机制 继承 基础语法 抽象属性 多态 Java中的多态测试 Scala测试如下 Scala的面向对象思想和Java是一致的 Scala包 基础语法 package 包名.类名 Scala包的三大作用 区分相同名字的类 当类很多时可以很好的管理类 控制访问范围 包名的命名规范 一般是小写字母小圆点 com.公司名.项目名.业务模块名 写包的好处 在maven中可以将自己写的包通过maven导入到项目中 在Scala中独有的包的写法  和文件夹不对应  可以独立存在 下图是我在类下边建的包和正常的包一样使用  包是可以嵌套的 内层调用外层 不需要导包 atguigu包在techer下 外层调用内层 对象 需要导包 如下代码 package chapter04 object Test_01_package {def main(args: Array[String]): Unit {} } //Scala独有的 package techer {import chapter04.techer.atguigu.Innerobject test01t {def main(args: Array[String]): Unit {println(hello 我是大哥 pack)//外层调用内层 对象 需要导包//Inner.main是下边那个包中的Inner.main(args)}}package atguigu {object Inner {def main(args: Array[String]): Unit {println(Inner)//内层调用外层 不需要导包 atguigu包在techer下test01t.main(args)}}} } 包对象 在Scala中包也是面向对象的只要在包的内部只要在内部都可以内层的嵌套也可以都可以直接调用包对象的属性和方法 如果包有嵌套会出现覆盖的情况则会调用距离最近的包的属性与方法包距离最近则会后调用会覆盖先前调用的 导包说明 导包是不支持嵌套的导包后只能用它下边的类和对象不能再用它下边的包如果想使用它下边包中的方法就需要使用   .   但是当我们导包直接导入它下边的包  就可以直接调用不需要用  .     来使用 Scala 中的三个默认导入分别是 import java.lang._ import scala._ import scala.Predef._类和对象 类可以看成一个模板 对象表示具体的事物 我们在使用对象的时候会以类为模板创建对象 定义类 在Java中一个文件中只能有一个public     在Scala中 默认的是public 但是它在一个文件中可以创建多个伴生类和伴生对象 封装 在Scala中属性只有两种  可变var与不可变val分离了读写权限----类似与面向对象中的封装封装get  set  方法  是为了分离读写权限 在Scala直接通过属性的类型来分离 在Scala中属性的类型已经封装成    var----private       val----private final          并且get  set方法也已经封装封装成了注解在使用get  set方法的时候需要 先引入注解BeanProperty----不过该注解的作用域只有一个属性  意思是  一个属性需要设置一个注解 构造器 面向对象的语言基本都有构造器构造方法如果在类中不写构造方法  默认构造器为空参构造方法 在Scala中也有构造器与Java不同 Scala的构造器是在类名上加个()   是主构造器主构造器无参的时候可以省略()  表示默认是可以无参构造的  类同Java 有主构造器就一定有从构造器 在主构造器的内部可以定义辅助构造器 定义的格式是固定的在从构造器的内部第一行代码必须是直接或者间接的调用主构造器 class Person03(name:String){var name1:Stringname def this(){this(唐不唐)println(hello world)} } 主从构造器的加载机制 在Scala中没有类加载机制所以在代码直接调用辅助构造器的时候它是不知道类中的内容的 所以上边要求从构造器的内部第一行代码必须是直接或者间接的调用主构造器这就是原因所在获取类信息加载一遍调用完后才会返回从构造器继续执行 根据main方法中你的参数决定你调用那个构造器 从构造器是有先后顺序的后边的只能调用前面的所调用的构造器必须在本构造器之前 从构造器的名称统一为this根基参数的个数来区分 主构造器是可以传参的 参数可以当作属性来使用参数类型如果省略默认val 继承 继承关键字extends 基础语法 class 子类名 extends 父类名 { 类体 }子类继承父类的属性和方法 scala 是单继承继承的本质其实与Java是完全不一样的 在创建子类的对象时Scala会先创建父类的对象让后在外层创建子类对象同Java Scala继承的本质就是继承父类的一个构造器继承那个构造器参数个数来区别就会调用那个 抽象属性 就是不写等号写抽象方法需要把类改成抽象类 抽象属性在使用的时候需要继承它   让后需要重写属性和方法在Java中是不需要重写属性的因为Scala底层是对属性进行封装自带方法 在重写抽象类中的非抽象方法的时候需要在重写的方法前面加上    override   关键字 子类调用父类的方法的时候使用关键字super   子类对抽象属性进行实现父类抽象属性可以用 var 修饰 子类对非抽象属性重写父类非抽象属性只支持 val 类型而不支持 var。 因为 var 修饰的为可变变量子类继承之后就可以直接使用(可以直接进行修改)没有必要重写 多态 父类的引用指向子类的实例 Java中的多态测试 在父子共有的属性和方法调用的是父类还是子类 public class Polymorphic {public static void main(String[] args) {Person personnew Student();System.out.println(person.name);person.sayhi();}public static class Person{String namePerson;public void sayhi(){System.out.println(person sayhi);}} public static class Student extends Person{String nameStudent;public void sayhi(){System.out.println(student sayhi);} }}属性是调用父类   方法是调用子类    在进行多态的时候是先将整个内存先把父类写入里面再把子类嵌套到外边 引用是使用栈 把地址值是先指向父类的   指向谁就调用谁的属性但是调用方法是一层一层的调用是不断的被重写的所以方法是调用子类 而Scala与Java不同 都是调用的子类的 Scala测试如下 package chapter04object Test07_Polymorphic {def main(args: Array[String]): Unit {val per:Person07new Student07per.sayhi();println(per.name)} } class Person07() {val name:Stringdsdsd def sayhi():Unit{println(hi person) } } class Student07 extends Person07{override val name: String Student override def sayhi(): Unit {println(Student say hi)} }匿名子类 可以使用匿名子类直接调用抽象类 也可以直接new这个抽象子类 匿名子类是自动使用多态的 多态无法调用子类独有的属性和方法外部无法使用匿名子类中特有的它自己的方法和属性
http://www.hkea.cn/news/14270819/

相关文章:

  • 网站开发实用技术pdf平面设计培训班哪里有
  • 网站的建设与管理自考wordpress 不显示全文
  • 万先生网站深圳福田地图
  • 南昌做网站建设公司免费简单门户网站开发
  • 川畅互联咨询 网站建设做室内概念图的网站
  • 当当网站开发系统说明西宁市建设局官方网站
  • 山东网站建设哪里好网盟推广费
  • 建设银行北京市财满街分行网站网站备案号注销的结果
  • 泉州城乡建设网站微网站自己可以做么
  • 北仑做网站免费推广平台排行
  • 广州网站建设程序开发做舞美的好素材网站j
  • ICO网站模板南城网站建设公司案例
  • 表白网站制作源代码网站备案重要吗
  • 网站带后台免费下载网站建设延期通知单
  • 网页制作与网站建设...家乡网页设计作品欣赏
  • 网站建设费 大创wordpress好不好用
  • 品传集团网站建设品牌策划方案设计
  • 天涯论坛网站建设wordpress禁用文章定时发布
  • 做网站ps注意事项大数据工程技术
  • 做网站和app有什么区别上社网站建设
  • 百度网站建设的意义个人网站备案所需材料
  • 弄一个网站要多少钱网站备案 邮寄资料
  • 做汽车配件外贸用什么网站关于网站开发
  • 网站要什么软件做公司网站开发有哪些
  • 合肥企业网站设计制作好一点的网站是怎么做的
  • 注册公司网站的费用网站的优化和推广方案
  • 圣融网站建设成都最新动态
  • 硬件开发网站美御品牌推广
  • 做网站 人员如何将自己做的网站发布到网上
  • 做问卷的网站好游戏运营备案官方网站