Classes, Variables, Methods, Access කරන්න දෙන Security(Modifications) එක අනුව Access කිරීමේ හා නොකිරීමේ හැකියාව තීරනේ වේ.
Access Modifiers Types 4 ක් ඇත.
- Private
- Default
- Protected
- Public
- Private Access Modifier
Private Access Modifier ප්රවේශ විය හැක්කේ Class තුළ පමණි.
Example :- මෙම උදාහරණයේ දී අපි A සහ Simple Class දෙකක් නිර්මාණය කර ඇත්තෙමු. Class එකක Private Data Member සහ Private Method අඩංගු වේ. අපි මෙම Private Member Class එකෙන් පිටත සිට Access වෙමු, එබැවින් Compile Time Error ඇත.
- Default Access Modifier
Example :- මෙම උදාහරණයේ දී, අපි Package දෙකක් සහ mypack නිර්මාණය කර ඇත්තෙමු. අපි A class හට එහි පැකේජයෙන් පිටත සිට ප්රවේශ වෙමු, Class public නොවන බැවින් එය පැකේජයෙන් පිටත සිට ප්රවේශ විය නොහැක.
//save by A.java
package pack;
class A{
void msg(){
System.out.println("Hello");
}
}
//save by B.java
package mypack;
import pack.*;
class B{
public static void main(String args[]){
A obj = new A();//Compile Time Error
obj.msg();//Compile Time Error
}
}
ඉහත උදාහරණයේ දී, A Class Scope එක සහ එහි Method msg() Default බැවින් Package පිටත සිට ප්රවේශ විය නොහැක.
- Protected Access Modifier
Example :- මෙම උදාහරණයේ දී, අපි Package දෙක සහ mypack නිර්මාණය කර ඇත්තෙමු. Pack Package තුල A class Public බැවින් පැකේජයෙන් පිටත සිට ප්රවේශ විය හැකිය. නමුත් මෙම පැකේජයේ msg Method Protected යැයි Declare කර ඇති බැවින් Class එකට පිටතින් Access විය හැක්කේ Inheritance හරහා පමණි.
//save by A.java
package pack;
public class A{
protected void msg(){
System.out.println("Hello");
}
}
//save by B.java
package mypack;
import pack.*;
class B extends A{
public static void main(String args[]){
B obj = new B();
obj.msg();
}
}
Output :
Hello
package pack;
public class A{
protected void msg(){
System.out.println("Hello");
}
}
//save by B.java
package mypack;
import pack.*;
class B extends A{
public static void main(String args[]){
B obj = new B();
obj.msg();
}
}
Output :
Hello
- Public Access Modifier
Example :-
//save by A.java
package pack;
public class A{
public void msg(){System.out.println("Hello");
}
}
//save by B.java
package mypack;
import pack.*;
class B{
public static void main(String args[]){
A obj = new A();
obj.msg();
}
}
Output :
Hello
Copyright © 2022 All Right Reseved
0 Comments