天天看點

scala的extend和with

釋出一個k8s部署視訊:https://edu.csdn.net/course/detail/26967

課程内容:各種k8s部署方式。包括minikube部署,kubeadm部署,kubeasz部署,rancher部署,k3s部署。包括開發測試環境部署k8s,和生産環境部署k8s。

騰訊課堂連接配接位址https://ke.qq.com/course/478827?taid=4373109931462251&tuin=ba64518

第二個視訊釋出  https://edu.csdn.net/course/detail/27109

騰訊課堂連接配接位址https://ke.qq.com/course/484107?tuin=ba64518

介紹主要的k8s資源的使用配置和指令。包括configmap,pod,service,replicaset,namespace,deployment,daemonset,ingress,pv,pvc,sc,role,rolebinding,clusterrole,clusterrolebinding,secret,serviceaccount,statefulset,job,cronjob,podDisruptionbudget,podSecurityPolicy,networkPolicy,resourceQuota,limitrange,endpoint,event,conponentstatus,node,apiservice,controllerRevision等。

第三個視訊釋出:https://edu.csdn.net/course/detail/27574

詳細介紹helm指令,學習helm chart文法,編寫helm chart。深入分析各項目源碼,學習編寫helm插件

————————————————------------------------------------------------------------------------------------------------------------------

最近在學習scala語言,記錄下學習心得。

scala的extend和with是怎麼用的?

1extend後面可以接類和特質(trait)

class A{
  
}

trait B{
  
}
           

比如:

class C extends A{
  
}

class D extends B{
  
}
           

2如果 extends和with同時使用則類比如放在前面

比如:

class WithClass extends A with B {
  
}
           

下面錯誤:

class WithClass extends B with A {
  
}
           

3比如先有extends後有with

下面錯誤:

class E with B{
  
}
           

4trait的用發和class一樣,trait可以繼承class

比如:

trait G extends B with F{
  
}

trait H extends A{
  
}
           

5靜态對象也可以繼承

比如

object B extends A with B{
  
}
           

6對象後面可以用with混入特質,但是不能用extends

比如:

object FF{
  def main(args: Array[String]): Unit = {
    new A() with F
  }
}
           

7with可以有多個,extends隻能有一個

比如:

object B extends A with B with H{
  
}