Spark学习笔记(面向对象编程)

Scala面向对象编程

1. 面向对象编程

1.1 概述

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

    class AndroidSys
    {
         
        //定义一个属性
        public String company;
        //定义一个行为方法
        public void use()
        {
         
            
        }
    }
    
    //创建对象
    AndroidSys androidObj=new AndroidSys();
    androidObj.company="google";
    androidObj.use();
    

1.2 包用法

1.2.1 基本语法

  • Scala中基本的package包语法和Java完全一致

    package com.gec.bigdata.scala
    

1.2.2 scala包的特点

  • 可以让源码文件中多次使用package关键字
  • 源码物理路径和包名没有关系
  • 明确包的作用域,可以在package关键字的后面增加大括号
  • 同一个源码中,子包中可以直接访问父包中的内容
  • scala可以将包当成对象来用可以直接声明属性和方法

1.2.3 多次使用package

  • 多次定义package
package com
package gec
package demo

object Test {
   

  def main(args: Array[String]): Unit = {
   

    println("test main")
  }

}

  • 嵌套package,体现嵌套层次关系
package com
{
   
  package gec{
   
    package demo{
   
      object Test {
   
        def main(args: Array[String]): Unit = {
   
          println("test main")
        }
      }
    }
  }
}
  • 同一个源码中,子包中可以直接访问父包中的内容

    package com
    {
         
      package gec{
         
        class Test2 {
         
          def test2(): Unit = {
         
            println("test2...")
          }
        }
    
        package demo{
         
          object Test {
         
            def main(args: Array[String]): Unit = {
         
              new Test2().test2();
            }
          }
        }
      }
    }
    

1.2.4 将package定义成对象

  • 定义包对象

    • 定义一个包对象,在相同的包里面的资源可以直接访问
    • 只要在com.gec.demo的包下的所有的类都可以直接调用testPackageObject方法
    package com.gec
    
    package object demo {
         
      def testPackageObject(): Unit = {
         
        println("test package object...")
      }
    }
    
    
  • 使用包对象

    package com
    {
         
      package gec{
         
        package demo{
         
          object Test {
         
            def main(args: Array[String]): Unit = {
         
              testPackageObject()
            }
          }
        }
      }
    }
    

1.3 导入包用法

1.3.1 基本语法

  • Scala中基本的import导入语法和Java完全一致

1.3.2 扩展语法

  • 星号在scala中有特殊用于,所以不能使用在import语法中,需要采用特殊符号:下划线

    import java.util._
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值