TypeScript Access Modifires


In object oriented programming, there are three types of access modifier is used, called public, private and protected. Access modifier gives you a great flexibility to mark class members as public, private and protected.

In TypeScript, each member is public by default.

Public Modifier

When a member is marked as public explicitly, it can access from outside of its containing class. For Example:

class Customer{
    public fname: string;
    public lname: string;
    public address: string;
    public phone: string;
    public constructor(fname: string, lname: string, address: string, phone: string) {
        this.fname = fname;
        this.lname = lname;
	 this.address = address;
	 this.phone = phone;
    }
    public printCustomer() {
        return "Hello, " + this.fname + "  " + this.lname;
    }
}
let cust = new Customer("Jimi","Scott","12-13/A12","3222223433");
cust.printCustomer();
cust.fname; //Accessible

Live Demo

Private Modifier

When a member is marked private, it cannot be accessed from outside of its containing class. For example:

class Customer{
    private fname: string;
    private lname: string;
    private address: string;
    private phone: string;
    public constructor(fname: string, lname: string, address: string, phone: string) {
        this.fname = fname;
        this.lname = lname;
	 this.address = address;
	 this.phone = phone;
    }
    public printCustomer() {
        return "Hello, " + this.fname + "  " + this.lname;
    }
}
let cust = new Customer("Jimi","Scott","12-13/A12","3222223433");
cust.printCustomer();
cust.fname; //Not Accessible
cust.lname; //Not Accessible

Live Demo

Protected Modifier

When a member is marked protected, it cannot be accessed outside of its containing class but exception that members declared protected can also be accessed by instances of deriving classes.

class classA {
    protected name: string;
    protected address: string;
    public phone: string;
    public constructor(name: string, address: string, phone: string) 
    { 
     this.name = name;
     this.address = address;
     this.phone = phone;
    }
    public print() {
		return this.name + " " + this.address + " " + this.phone;
    }
}
class classB extends classA {
    constructor(name: string, address: string, phone: string) 
	{ super(name, address, phone); }
}
let b = new classB("Jimi Scott","12-13/A12", "8637832178");
b.print();
b.name // Not Accessible
b.address // Not Accessible
b.phone // Accessible

Live Demo


See Also

AngularJS Built-in Filters
AngularJS Built-in Directives
AngularJS Expression
AngularJS Built-in Events
AngularJS Scope Methods
AngularJS Built-in Services
AngularJS Controller Inheritance
AngularJS Custom Directives



 
SHARE THIS IF YOU LIKE!
submit to reddit

TYPESCRIPT LANGUAGE TECHNIQUES

SUBSCRIBE FOR LATEST UPDATES
HAVE WE CONNECTED ON FACEBOOK?
TOP TUTORIALSTOP CODE EXAMPLESTOP LIVE DEMOLINKSSTAY CONNECTED
HTML Tutorial
HTML5 Tutorial
Bootstrap3 Tutorial
Javascript Tutorial
TypeScript Tutorial
AngularJS Tutorial
CSharp Tutorial
PHP Tutorial
Developer Tools
Javascript
AngularJS
Google MAP API V3
ASP.NET
Javascript
AngularJS
Google MAP API V3
Contact Us
Advertise with Us
Privacy Policy
Disclaimer
Stay connected. We actually like you. If you want to get up to the minute updates, then connect with us on your fav below.
 
Twitter   Linkedin   Facebook   Google+    RSS   Pinterest
 
Protected by Copyscape Original Content Checker
 
 
Copyright ©2017 www.techstrikers.com Unauthorized reproduction/replication of any part of this site is prohibited.