Javaのアクセス修飾子
Javaのアクセス修飾子の働きを忘れてたので調べた。
アクセス修飾子 | 自ファイル | 他ファイル | |||
---|---|---|---|---|---|
自クラス | サブクラス | 他クラス | サブクラス | 他クラス | |
public | ○ | ○ | ○ | ○ | ○ |
protected | ○ | ○ | ○ | ○ | × |
なし | ○ | ○ | ○ | × | × |
private | ○ | × | × | × | × |
exampleA/ExClassAファイル
package exampleA; public class ExClassA { public String exPublic = "publicアクセスレベル"; protected String exProtected = "protectedアクセスレベル"; String exDefault = "無指定アクセスレベル"; private String exPrivate = "privateアクセスレベル"; }
exampleB/ExClassBファイル
package exampleB; import exampleA.*; public class ExClassB extends ExClassA { //(1) public static void main(String[] args) { ExClassA objectA = new ExClassA(); //(2) System.out.println(objectA.exPublic); //(3) //System.out.println(objectA.exProtected); //(4) //System.out.println(objectA.exDefault); //(5) //System.out.println(objectA.exPrivate); //(6) ExClassB objectB = new ExClassB(); //(7) System.out.println(objectB.exProtected); //(8) } }
参照
すごい Haskell たのしく学ぼう! 正誤表のようなもの(非公式)
後で読み返すときのため。
※この表の内容は、間違っている場合があります
ページ | 誤 | 正 |
---|---|---|
p101 findKey関数4行目 | | key == x = Just v | | key == k = Just v |
p194 remove関数7-8行目 | putStrLn..., mapM_... | |
p198 21行目 | 新しい形クラス | 新しい型クラス |
p264 21行目 | 引き継ぎがない | 引き継がない |
関数適用の優先順位
関数適用の優先順位はどんな演算子の優先順位よりも高い。
演算子化された関数の優先順位は、infixl 9。
プレリュード演算子の優先順位と結合性
Precedence | Left associative operators |
Non-associative operators |
Right associative operators |
9 | !! | . | |
8 | ^, ^^, ** | ||
7 |
*, /, `div`, `mod`, `rem`, `quot` |
||
6 | +, - | ||
5 | :, ++ | ||
4 |
==, /=, <, <=, >, >=, `elem`, `notElem` |
||
3 | && | ||
2 | || | ||
1 | >>, >>= | ||
0 | $, $!, `seq` |
ただし、無結合(infix)、左結合(infixl)、右結合(infixr)。