2017年2月23日 星期四

rails Q&A

Q:
rails s doesn't work.(an error while trying to load the gem 'uglifier')
Ans: 
sudo apt-get install nodejs

安裝Sublime Text 2

sudo add-apt-repository ppa:webupd8team/sublime-text-2
sudo apt-get update
sudo apt-get install sublime-text

//開啟sublime text 2
subl 

2017年2月8日 星期三

JAVA筆記

final:
不可改變值的變數
類別經過final宣告不能被繼承
函數經過final宣告不能被改寫

void:

函數(function)為void時,代表不需要回傳值。

this: 

即為函數本身的field,如某函數的引數與資料成員名稱型別相同,取this為資料成員
this(); 代表呼叫沒有引數的建構元
this("cool"); 代表呼叫有引數的建構元,其原理與多載相同

super:
繼承狀態下才能使用,只能呼叫於子類別
呼叫父類別建構元,可加入引數,同多載

存取類別的資料成員

多載(overloading):
引數與型態不可相同,函數名稱、回傳值型態可相同。

改寫(overriding):
可於子類別改寫父類別的函數

private member:

只有本身class可存取

public member:

任何class可存取

protected member:
不可被外部類別呼叫,但可被繼承的子類別呼叫

省略public修飾子(modifier):
省略public不可跨package存取

封裝(encapsulate):

如外部類別需存取private member,必須透過同class的public menber存取,才能被外部取用。

建構元(constructor):

若class沒有設定建構元,系統會產生預設的建構元,此建構元沒有引數,也不會執行任何動作
建構元名稱 = calss名稱

實例變數(instance variable):
物件儲存於不同記憶體

實例函數(instance method):

透過物件來呼叫的函數

類別變數(class variable):

宣告變數加上static,用來節省記憶體空間。

類別函數(class method):

加上static的函數,可直接由類別呼叫(類別名稱.函數),無須產生物件來呼叫。

類別函數不需要用物件來呼叫方法故不使用this關鍵字

繼承(iheritance):

子類別可繼承父類別資料成員以及物件,private menber須藉由public member呼叫使用,同封裝

抽象類別(abstract class):
可建立函數提供給子類別參考,也可以宣告抽象函數給子類別改寫

抽象函數(abstract method):
僅可以宣告puclic以及protected,一定要加上abstract關鍵字

介面(interface):
函數必定要定義abstract,即全為抽象函數
函數只能宣告public或不宣告
資料成員必定要設定初始值

多重繼承:
子類別可同時實作多個介面,故利用此方法來達到多重繼承的目的