12_Scala_package

Scaal面向对象编程

Scala是一门完全面向对象语言,摒弃了Java很多不是面向对象的语法,虽然如此其面向对象思想和Java完全一致

1.回顾Java

//    1.Scala包
//      语法:com.atguigu + gmall +user + 			util(service,bean)
//          域名反写 + 项目名称 + 模块名称 + 程序分类
//          com.atguigu.gmall.user.util(
//      用途:
//          --分类管理
//          --区分类
//          --权限管理
//          --定义源码存放路径
      /*

在这里插入图片描述
在这里插入图片描述

2.package可以多次声明

Scala的package可以多次声明 ,体现不同包的关系

//    2.TODO Scala的package可以多次声明    ,体现不同包的关系
//    package com
//    package atguigu
//    package bigdata
//    package scala
//    package chapter06

3.设置作用域,设置上下级

可以给包设置作用域,设置上下级关系

//    3.TODO 可以给包设置作用域,设置上下级关系
package scala{
      package chapter06{
        object  demo{
          def main(args: Array[String]): Unit = {
            
          }
        }
      }
    }

4.包可以当作对象使用

包对象声明的任何属性和方法,在当前包和其子包都可以直接访问

在这里插入图片描述

在这里插入图片描述

基本语法 package object xx{
}

在这里插入图片描述

在包对象中写的所有方法,同一包下都可以使用;

在这里插入图片描述

5.import

java 中的常规用法

在这里插入图片描述

//    1.TODO scala中的import是用来导包的;
    //导包完成后可以直接包名.方法进行执行其内容
    _12Scala面向对象.test()

其次:import关键字可以在任何地方使用

但是:局部位置导包,其他位置不起作用

6.Scala用_取代Java *

import java.util._

7.导入多个包

    import java.util.{
    List,Arrays,Map
    }

8.屏蔽类

在这里插入图片描述

上述导包,两个类中都有Date,引起歧义

假如我想使用util的Date,那么我会将sql屏蔽掉

写法如下

    import java.util._
    import java.sql.{Date=>_,_}     //屏蔽掉Date	但是保留了_其他所有包
    new Date()

9.类起别名

    import java.util.{HashMap=>JAVAHASHMAP}
    val map = new JAVAHASHMAP()

注意:区分类起别名和屏蔽类的写法

10.import的规则

//      --以当前包为基准,导入指定子包中的类’

在这里插入图片描述

也就是说先看当前包里面有没有,没了,自上而下依次寻找

11.有些包无需导入

java.lang

scala

scala中的Predef对象的方法无需导入;

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值