title
Method Reference in Java 8
description
Check out our website: http://www.telusko.com
Follow Telusko on Twitter: https://twitter.com/navinreddy20
Follow on Facebook:
Telusko : https://www.facebook.com/teluskolearnings
Navin Reddy : https://www.facebook.com/navintelusko
Follow Navin Reddy on Instagram: https://www.instagram.com/navinreddy20
Subscribe to our other channel:
Navin Reddy : https://www.youtube.com/channel/UCxmkk8bMSOF-UBF43z-pdGQ?sub_confirmation=1
Telusko Hindi :
https://www.youtube.com/channel/UCitzw4ROeTVGRRLnCPws-cw?sub_confirmation=1
detail
{'title': 'Method Reference in Java 8', 'heatmap': [{'end': 330.306, 'start': 315.074, 'weight': 0.817}, {'end': 952.21, 'start': 922.29, 'weight': 0.722}, {'end': 1043.108, 'start': 974.338, 'weight': 0.781}, {'end': 1152.832, 'start': 1113.504, 'weight': 0.981}], 'summary': 'Discusses java 8 method reference and lambda expression for consumer interface, exploring its usage, syntax, benefits, and practical examples, as well as covering custom printer class creation, parsing logic, and implementing data conversion logic using methods like convert, parser object, pass method, and lambda expressions.', 'chapters': [{'end': 190.584, 'segs': [{'end': 37.338, 'src': 'embed', 'start': 5.404, 'weight': 0, 'content': [{'end': 6.365, 'text': 'Welcome back aliens.', 'start': 5.404, 'duration': 0.961}, {'end': 10.631, 'text': "I'm Navin Reddy from ThirdSchoolLearnings and today we are going to talk about method reference.", 'start': 6.546, 'duration': 4.085}, {'end': 20.83, 'text': 'Now in Java 8, we got lots of features, right? We got Stream API, we got Lambda Expression, and one of the features which we got is method reference.', 'start': 11.485, 'duration': 9.345}, {'end': 26.733, 'text': 'Now to understand method reference, first of all, we have to understand what is Lambda Expression, and then you can understand method reference.', 'start': 21.71, 'duration': 5.023}, {'end': 33.756, 'text': "So in this video, we're going to talk about, first we'll start with Lambda Expression, and then we'll see how to convert that into method reference.", 'start': 27.373, 'duration': 6.383}, {'end': 37.338, 'text': 'I can assume that this video will be a bit longer, so just be with me.', 'start': 34.177, 'duration': 3.161}], 'summary': 'Navin reddy discusses method reference in java 8, starting with lambda expression.', 'duration': 31.934, 'max_score': 5.404, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo5404.jpg'}, {'end': 66.33, 'src': 'embed', 'start': 37.899, 'weight': 1, 'content': [{'end': 40.34, 'text': 'At the end of this video, you will get the true power of method reference.', 'start': 37.899, 'duration': 2.441}, {'end': 45.786, 'text': "okay. so what we'll do now is let's, first of all, let's create a list of strings.", 'start': 41.661, 'duration': 4.125}, {'end': 50.712, 'text': 'so just to understand how lambda expression works, let me get a list of uh, string.', 'start': 45.786, 'duration': 4.926}, {'end': 53.735, 'text': "here again, i'm assuming that you know lambda expression a bit.", 'start': 50.712, 'duration': 3.023}, {'end': 57.74, 'text': "uh, so we'll say string and we'll, let's create a name.", 'start': 53.735, 'duration': 4.005}, {'end': 62.665, 'text': "so list of strings, and we'll say new, at least.", 'start': 57.74, 'duration': 4.925}, {'end': 64.768, 'text': "so we'll say new, array or not.", 'start': 62.665, 'duration': 2.103}, {'end': 66.33, 'text': "let's go for the static values.", 'start': 64.768, 'duration': 1.562}], 'summary': 'Learn the true power of method reference and understand lambda expressions through creating a list of strings.', 'duration': 28.431, 'max_score': 37.899, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo37899.jpg'}, {'end': 168.682, 'src': 'embed', 'start': 127.974, 'weight': 2, 'content': [{'end': 130.196, 'text': 'so in fact we can also use lambda expression here.', 'start': 127.974, 'duration': 2.222}, {'end': 130.937, 'text': 'lambda expression here.', 'start': 130.196, 'duration': 0.741}, {'end': 134.701, 'text': 'we can say str, arrow, and then we can print.', 'start': 130.937, 'duration': 3.764}, {'end': 141.408, 'text': 'we can say system, dot out dot, print ln, and you can pass and you can pass str.', 'start': 134.701, 'duration': 6.707}, {'end': 143.769, 'text': 'So what we are doing is we are printing this value.', 'start': 141.448, 'duration': 2.321}, {'end': 147.531, 'text': 'So whatever value it takes, which is str, we are printing that stuff.', 'start': 144.289, 'duration': 3.242}, {'end': 152.633, 'text': "So before understanding this, let's try to understand how exactly we got that thing.", 'start': 148.091, 'duration': 4.542}, {'end': 155.315, 'text': 'So first of all, we have to create object of consumer.', 'start': 153.074, 'duration': 2.241}, {'end': 158.957, 'text': 'As you can see, for each method, takes an object of consumer.', 'start': 155.335, 'duration': 3.622}, {'end': 165.24, 'text': "So you have to say consumer, and we'll say control space, and here let's create a consumer of string.", 'start': 159.017, 'duration': 6.223}, {'end': 168.682, 'text': 'Now consumer will say con equal to new consumer.', 'start': 165.92, 'duration': 2.762}], 'summary': 'Using lambda expression to print string values with consumer interface.', 'duration': 40.708, 'max_score': 127.974, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo127974.jpg'}], 'start': 5.404, 'title': 'Java 8 method reference and lambda expression for consumer interface', 'summary': 'Discusses java 8 method reference, emphasizing its power through the conversion of a list of strings, and explains the use of lambda expression for the consumer interface to print the value taken by the interface and creating an object of consumer with a method to define.', 'chapters': [{'end': 127.974, 'start': 5.404, 'title': 'Java 8 method reference', 'summary': 'Discusses method reference in java 8, starting with a comparison to lambda expressions and demonstrating its power through the conversion of a list of strings into method reference, emphasizing the importance of understanding lambda expressions in this process.', 'duration': 122.57, 'highlights': ['The chapter discusses method reference in Java 8, starting with a comparison to Lambda Expressions.', 'Demonstrates the power of method reference through the conversion of a list of strings, highlighting the importance of understanding Lambda Expressions in this process.']}, {'end': 190.584, 'start': 127.974, 'title': 'Lambda expression for consumer interface', 'summary': 'Explains how to use a lambda expression for the consumer interface to print the value taken by the interface, and creating an object of consumer with a method to define.', 'duration': 62.61, 'highlights': ['Explaining the usage of lambda expression for the Consumer interface to print the value taken by the interface. Lambda expression used to print the value taken by the Consumer interface.', 'Demonstrating the creation of an object of Consumer with a method to define. Creation of an object of Consumer with a method to define.']}], 'duration': 185.18, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo5404.jpg', 'highlights': ['The chapter discusses method reference in Java 8, starting with a comparison to Lambda Expressions.', 'Demonstrates the power of method reference through the conversion of a list of strings, highlighting the importance of understanding Lambda Expressions in this process.', 'Explaining the usage of lambda expression for the Consumer interface to print the value taken by the interface.', 'Demonstrating the creation of an object of Consumer with a method to define.']}, {'end': 381.918, 'segs': [{'end': 241.854, 'src': 'embed', 'start': 210.442, 'weight': 4, 'content': [{'end': 215.046, 'text': 'priya and onto anto and all those values will be sending to this accept method.', 'start': 210.442, 'duration': 4.604}, {'end': 220.37, 'text': 'so this accept method, they will take all these values and it will print that one by one.', 'start': 215.046, 'duration': 5.324}, {'end': 226.257, 'text': 'So this except method takes the value one by one, it will print everything.', 'start': 221.491, 'duration': 4.766}, {'end': 227.699, 'text': "And that's what is happening here.", 'start': 226.858, 'duration': 0.841}, {'end': 230.263, 'text': 'So when they run this code, you can say we got these names.', 'start': 227.759, 'duration': 2.504}, {'end': 234.351, 'text': 'But then with the help of lambda expression.', 'start': 232.23, 'duration': 2.121}, {'end': 241.854, 'text': 'now we know that this consumer if I jump to consumer again, you can see is a functional interface, which means that we can use lambda expression.', 'start': 234.351, 'duration': 7.503}], 'summary': 'The accept method prints all values one by one using lambda expressions.', 'duration': 31.412, 'max_score': 210.442, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo210442.jpg'}, {'end': 275.029, 'src': 'embed', 'start': 249.617, 'weight': 2, 'content': [{'end': 254.959, 'text': "So we'll remove that and we also don't need this round brackets, curly brackets, because we have only one statement.", 'start': 249.617, 'duration': 5.342}, {'end': 257.64, 'text': 'and we can write everything in one line.', 'start': 256.039, 'duration': 1.601}, {'end': 259.281, 'text': "that's how you implement lambda expression.", 'start': 257.64, 'duration': 1.641}, {'end': 262.002, 'text': "again, i'm assuming that you know lambda expression a bit.", 'start': 259.281, 'duration': 2.721}, {'end': 265.164, 'text': "if you don't know, you can watch my video already there on youtube.", 'start': 262.002, 'duration': 3.162}, {'end': 269.466, 'text': 'search for lambda expression, telescope, or there is called lambda expression in java.', 'start': 265.164, 'duration': 4.302}, {'end': 273.868, 'text': 'so we can, we can cut this part and we can paste it in paste in place of corn.', 'start': 269.466, 'duration': 4.402}, {'end': 275.029, 'text': "right. that's what we did earlier.", 'start': 273.868, 'duration': 1.161}], 'summary': 'The transcript explains implementing lambda expressions in java, suggesting watching a video for further understanding.', 'duration': 25.412, 'max_score': 249.617, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo249617.jpg'}, {'end': 310.711, 'src': 'embed', 'start': 282.974, 'weight': 1, 'content': [{'end': 285.676, 'text': "that value will be going in s, and you're printing that value.", 'start': 282.974, 'duration': 2.702}, {'end': 292.421, 'text': 'Now, instead of using the consumer object I mean creating that object we can use lambda expression right?', 'start': 286.778, 'duration': 5.643}, {'end': 296.203, 'text': 'And we know that lambda expression is better than the earlier anonymous inner class.', 'start': 292.601, 'duration': 3.602}, {'end': 303.947, 'text': 'The thing is, if you look at this lambda expression, what we are doing is your, for it says hey, I will give you a value.', 'start': 297.324, 'duration': 6.623}, {'end': 305.128, 'text': 'you have to print that value.', 'start': 303.947, 'duration': 1.181}, {'end': 310.711, 'text': "I mean, don't you think we are simply fetching the value and printing the value?", 'start': 305.148, 'duration': 5.563}], 'summary': 'Lambda expressions are better than anonymous inner class for printing values.', 'duration': 27.737, 'max_score': 282.974, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo282974.jpg'}, {'end': 368.661, 'src': 'heatmap', 'start': 315.074, 'weight': 0, 'content': [{'end': 319.437, 'text': "we can say okay, whatever value i'll be getting from foreach, i will simply print it.", 'start': 315.074, 'duration': 4.363}, {'end': 322.1, 'text': 'so i just have to call a method.', 'start': 319.437, 'duration': 2.663}, {'end': 324.181, 'text': 'now. we we all know this thing right.', 'start': 322.1, 'duration': 2.081}, {'end': 330.306, 'text': 'in java we have a concept of call by value, right, so we can, we can say, call by value, right.', 'start': 324.181, 'duration': 6.125}, {'end': 334.67, 'text': 'so normally we pass a normal variables or you pass a reference variables.', 'start': 330.306, 'duration': 4.364}, {'end': 336.892, 'text': 'both you can pass as a parameter.', 'start': 334.67, 'duration': 2.222}, {'end': 339.394, 'text': 'but now what we are doing is we are calling.', 'start': 336.892, 'duration': 2.502}, {'end': 343.197, 'text': 'so we are calling by method.', 'start': 340.274, 'duration': 2.923}, {'end': 344.238, 'text': 'i mean this is awesome, right.', 'start': 343.197, 'duration': 1.041}, {'end': 348.862, 'text': 'the first time in java we got this concept where you can pass the method.', 'start': 344.238, 'duration': 4.624}, {'end': 351.204, 'text': 'okay, now this looks like higher order function.', 'start': 348.862, 'duration': 2.342}, {'end': 358.01, 'text': "now, if you're coming from functional programming, if you have done functional programming in javascript or maybe some, maybe in c sharp, maybe in,", 'start': 351.204, 'duration': 6.806}, {'end': 364.296, 'text': 'uh, in any other language in functional programming, what we do is we pass a function to a function.', 'start': 358.01, 'duration': 6.286}, {'end': 368.661, 'text': 'again in java we do call them as methods, but then we can call them as functions as well.', 'start': 364.296, 'duration': 4.365}], 'summary': 'In java, the concept of call by value allows passing method as a parameter, resembling higher order functions in functional programming.', 'duration': 44.48, 'max_score': 315.074, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo315074.jpg'}], 'start': 190.584, 'title': 'Lambda expressions', 'summary': 'Explores lambda expression usage in a consumer object to print values from a list, and discusses its implementation in java, including syntax removal, call by method, benefits, comparison with anonymous inner classes, and relation to higher order functions.', 'chapters': [{'end': 234.351, 'start': 190.584, 'title': 'Lambda expression in consumer object', 'summary': 'Explores the usage of lambda expression in a consumer object to print values fetched from a list one by one, ultimately demonstrating its functionality through a code example.', 'duration': 43.767, 'highlights': ['The forage method fetches values from the list one by one and sends them to the accept method, resulting in the printing of each value. This demonstrates the functionality of the lambda expression in the consumer object.', 'The code example showcases the usage of the lambda expression in a consumer object to print values fetched from a list, providing a practical demonstration of its functionality.']}, {'end': 381.918, 'start': 234.351, 'title': 'Lambda expression in java', 'summary': 'Discusses the implementation of lambda expressions in java, explaining the removal of unnecessary syntax and the concept of call by method, highlighting the benefits and comparison with anonymous inner classes, and its relation to higher order functions.', 'duration': 147.567, 'highlights': ['Lambda expressions allow the removal of unnecessary syntax like round brackets and curly brackets, making the code more concise and readable.', 'The concept of call by method allows passing a method as a parameter, introducing a new concept in Java programming.', 'Comparing lambda expressions with anonymous inner classes, lambda expressions are considered better for their concise syntax and improved functionality.', 'The use of lambda expressions in Java introduces the concept of higher order functions, allowing the passing of a function to another function, resembling functional programming in other languages.']}], 'duration': 191.334, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo190584.jpg', 'highlights': ['The use of lambda expressions in Java introduces the concept of higher order functions, allowing the passing of a function to another function, resembling functional programming in other languages.', 'Comparing lambda expressions with anonymous inner classes, lambda expressions are considered better for their concise syntax and improved functionality.', 'Lambda expressions allow the removal of unnecessary syntax like round brackets and curly brackets, making the code more concise and readable.', 'The concept of call by method allows passing a method as a parameter, introducing a new concept in Java programming.', 'The forage method fetches values from the list one by one and sends them to the accept method, resulting in the printing of each value. This demonstrates the functionality of the lambda expression in the consumer object.']}, {'end': 497.419, 'segs': [{'end': 480.163, 'src': 'embed', 'start': 382.499, 'weight': 0, 'content': [{'end': 392.234, 'text': 'Now, the reason why we are getting error is because you can see if you go there it says println cannot be resolved to a variable because by default everything is referred as a variable.', 'start': 382.499, 'duration': 9.735}, {'end': 396.924, 'text': "We need to inform that, hey, this is not a variable, it's a method.", 'start': 393.942, 'duration': 2.982}, {'end': 399.265, 'text': 'And you can do that by using two colons.', 'start': 397.364, 'duration': 1.901}, {'end': 406.089, 'text': 'Now, the moment you say two colons, it says, now if I go there, it says, a println cannot be resolved as a variable.', 'start': 399.345, 'duration': 6.744}, {'end': 406.889, 'text': "So again, there's a problem.", 'start': 406.109, 'duration': 0.78}, {'end': 413.673, 'text': 'We have to make sure that this project is based on Java 8, so I will go to build path and configure build path.', 'start': 407.549, 'duration': 6.124}, {'end': 419.016, 'text': "First of all, we have to verify that this is based on Java 8, and it is there, it is based on Java 8, that's great.", 'start': 414.593, 'duration': 4.423}, {'end': 420.597, 'text': "Let's get back to our code.", 'start': 419.396, 'duration': 1.201}, {'end': 422.578, 'text': 'now once.', 'start': 421.517, 'duration': 1.061}, {'end': 429.042, 'text': 'once you mention this double colon, you have to also mention this println is a method, belongs to which class or which object.', 'start': 422.578, 'duration': 6.464}, {'end': 431.744, 'text': 'so i will say println is a method of out.', 'start': 429.042, 'duration': 2.702}, {'end': 437.408, 'text': 'i mean out is the object and this out belongs to system.n or system.out.', 'start': 431.744, 'duration': 5.664}, {'end': 441.731, 'text': "so we'll say system.out and then refer that colon, colon, println.", 'start': 437.408, 'duration': 4.323}, {'end': 447.655, 'text': 'so we mentioned that this println method which we are passing belongs to system.out.', 'start': 441.731, 'duration': 5.924}, {'end': 450.416, 'text': 'and now, if we run this, you can see it still.', 'start': 447.655, 'duration': 2.761}, {'end': 450.817, 'text': 'it works.', 'start': 450.416, 'duration': 0.401}, {'end': 454.42, 'text': 'So we are not using lambda expression here.', 'start': 451.477, 'duration': 2.943}, {'end': 456.041, 'text': 'we are using a method.', 'start': 454.42, 'duration': 1.621}, {'end': 456.842, 'text': 'reference right?', 'start': 456.041, 'duration': 0.801}, {'end': 459.524, 'text': 'We are passing a method as a parameter.', 'start': 457.182, 'duration': 2.342}, {'end': 463.929, 'text': 'Again, from where you will get this method, you will get this method in system.out.', 'start': 460.025, 'duration': 3.904}, {'end': 472.356, 'text': "Example, if I click on this method now, which is println, you can see it opens a definition which is println, and that's how it works.", 'start': 464.589, 'duration': 7.767}, {'end': 474.959, 'text': 'now, this is the basics of method reference.', 'start': 473.337, 'duration': 1.622}, {'end': 478.262, 'text': 'right. so this is how we can use method reference in java 8.', 'start': 474.959, 'duration': 3.303}, {'end': 479.483, 'text': 'but then this is normal, right.', 'start': 478.262, 'duration': 1.221}, {'end': 480.163, 'text': 'i mean okay.', 'start': 479.483, 'duration': 0.68}], 'summary': 'Explains resolving println error using method reference in java 8.', 'duration': 97.664, 'max_score': 382.499, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo382499.jpg'}], 'start': 382.499, 'title': 'Using method reference in java 8', 'summary': 'Explains the basics of using method reference in java 8, including resolving errors, configuring build path, and understanding the syntax for referencing methods, emphasizing the importance of system.out and providing a practical example of method reference.', 'chapters': [{'end': 497.419, 'start': 382.499, 'title': 'Using method reference in java 8', 'summary': 'Explains the basics of using method reference in java 8, including resolving errors, configuring build path, and understanding the syntax for referencing methods, emphasizing the importance of system.out and providing a practical example of method reference.', 'duration': 114.92, 'highlights': ['Resolving errors by informing that a method is not a variable by using double colons, which is essential for using method reference in Java 8.', 'Configuring build path to ensure the project is based on Java 8, verifying the compatibility of the project with Java 8.', 'Understanding the syntax for referencing methods by specifying the object and method using double colons, such as system.out and println.', 'Emphasizing the importance of system.out and how referencing a method as a parameter is achieved in Java 8.', 'Providing a practical example of method reference by demonstrating how to use method reference in a code implementation.']}], 'duration': 114.92, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo382499.jpg', 'highlights': ['Resolving errors by informing that a method is not a variable by using double colons, which is essential for using method reference in Java 8.', 'Configuring build path to ensure the project is based on Java 8, verifying the compatibility of the project with Java 8.', 'Understanding the syntax for referencing methods by specifying the object and method using double colons, such as system.out and println.', 'Emphasizing the importance of system.out and how referencing a method as a parameter is achieved in Java 8.', 'Providing a practical example of method reference by demonstrating how to use method reference in a code implementation.']}, {'end': 800.062, 'segs': [{'end': 524.404, 'src': 'embed', 'start': 498.544, 'weight': 0, 'content': [{'end': 502.947, 'text': 'What I will do is I will create my own interface, I will create my own class.', 'start': 498.544, 'duration': 4.403}, {'end': 508.992, 'text': "So let's say, if I have a class called as MyPrinter, okay, now what this MyPrinter will do is it will print.", 'start': 503.568, 'duration': 5.424}, {'end': 512.354, 'text': "Of course, I can go with complex example, let's just make it simple.", 'start': 509.372, 'duration': 2.982}, {'end': 521.761, 'text': "We'll say, let's say we have a method which is MyPrinter, and this MyPrinter class has a method called as public void print.", 'start': 513.355, 'duration': 8.406}, {'end': 524.404, 'text': 'What it will do is it will print, simply it will print.', 'start': 521.922, 'duration': 2.482}], 'summary': 'Creating a class myprinter with a method print to perform printing.', 'duration': 25.86, 'max_score': 498.544, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo498544.jpg'}, {'end': 616.251, 'src': 'embed', 'start': 587.305, 'weight': 1, 'content': [{'end': 588.606, 'text': "And that's why I'm using the smart printer.", 'start': 587.305, 'duration': 1.301}, {'end': 594.827, 'text': 'because if you use system.out.printer in your code, it will by default, will print on the console.', 'start': 589.466, 'duration': 5.361}, {'end': 601.128, 'text': 'maybe i want to print it somewhere else, maybe on the server, maybe on the in the file, maybe on the socket.', 'start': 594.827, 'duration': 6.301}, {'end': 602.988, 'text': "so i'm getting a subject class my printer.", 'start': 601.128, 'duration': 1.86}, {'end': 607.689, 'text': 'so whatever logic we write here, that logic will be implemented based on what you.', 'start': 602.988, 'duration': 4.701}, {'end': 608.809, 'text': 'i mean based on what you send.', 'start': 607.689, 'duration': 1.12}, {'end': 611.87, 'text': 'so if you send navin ready, we are printing it.', 'start': 608.809, 'duration': 3.061}, {'end': 616.251, 'text': 'maybe if you want to send it on server, this code changes and everything will change.', 'start': 611.87, 'duration': 4.381}], 'summary': 'Using smart printer to customize output destination and implement logic based on input.', 'duration': 28.946, 'max_score': 587.305, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo587305.jpg'}, {'end': 658.208, 'src': 'embed', 'start': 628.139, 'weight': 3, 'content': [{'end': 630.501, 'text': 'maybe i want to convert in a different way.', 'start': 628.139, 'duration': 2.362}, {'end': 635.485, 'text': 'example, maybe i want to convert and uh, okay, how do we convert this?', 'start': 630.501, 'duration': 4.984}, {'end': 641.783, 'text': 'Maybe I want to convert in a way it will, okay.', 'start': 637.782, 'duration': 4.001}, {'end': 646.785, 'text': "so let's say, if I have a name, which is Navin Reddy, it should convert and it should be N-A-V capital.", 'start': 641.783, 'duration': 5.002}, {'end': 649.986, 'text': 'I want to print only first three values.', 'start': 647.325, 'duration': 2.661}, {'end': 652.206, 'text': 'Maybe I want to print only N-R.', 'start': 650.366, 'duration': 1.84}, {'end': 653.987, 'text': "I don't want to store the exact name.", 'start': 652.526, 'duration': 1.461}, {'end': 658.208, 'text': 'Maybe I want to store this name in a capital format or maybe in uppercase.', 'start': 654.327, 'duration': 3.881}], 'summary': 'Discussion about converting a name to uppercase and printing specific characters.', 'duration': 30.069, 'max_score': 628.139, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo628139.jpg'}, {'end': 800.062, 'src': 'embed', 'start': 763.36, 'weight': 2, 'content': [{'end': 769.605, 'text': 'So what logic I want is, if I send a name which is less than three letters, I want to make it uppercase.', 'start': 763.36, 'duration': 6.245}, {'end': 770.865, 'text': "Let's do that.", 'start': 770.345, 'duration': 0.52}, {'end': 784.891, 'text': 'So I will simply say if s.length is less than equal to 3, in that case, s would be s.toUpperCase.', 'start': 771.526, 'duration': 13.365}, {'end': 792.014, 'text': "Else, we'll say s equal to s.toLowerCase.", 'start': 787.292, 'duration': 4.722}, {'end': 796.659, 'text': 'So if the length is less than 3, you will say toUpperCase.', 'start': 793.536, 'duration': 3.123}, {'end': 800.062, 'text': 'If the length is more than 3, you will say toLowerCase.', 'start': 796.719, 'duration': 3.343}], 'summary': 'Logic to convert names <3 letters to uppercase and >=3 letters to lowercase.', 'duration': 36.702, 'max_score': 763.36, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo763360.jpg'}], 'start': 498.544, 'title': 'Custom printer class and parsing logic in java', 'summary': "Covers creating a custom printer class 'myprinter' and parsing logic in java, highlighting the flexibility it offers for different implementation options and the specific logic for string conversion, such as uppercase for length less than or equal to 3 and lowercase for length more than 3.", 'chapters': [{'end': 607.689, 'start': 498.544, 'title': 'Creating custom printer class', 'summary': "Discusses creating a custom printer class, 'myprinter', with a method to print a specified string and explores the need for a separate class for printing data, highlighting the flexibility it offers for different implementation options.", 'duration': 109.145, 'highlights': ["Creating a custom printer class called 'MyPrinter' with a method to print a specified string, providing flexibility for different implementation options, such as printing to a log file or server.", 'Exploring the need for a separate class for printing data and the flexibility it offers for different implementation options.']}, {'end': 800.062, 'start': 607.689, 'title': 'Parsing logic in java', 'summary': 'Discusses parsing logic in java, including the implementation of a parser interface with a parse method and the creation of a string parser to convert strings based on certain logic, such as converting to uppercase if the length is less than or equal to 3 and to lowercase if the length is more than 3.', 'duration': 192.373, 'highlights': ['The chapter discusses the implementation of a parser interface with a parse method to change string values based on certain logic. The chapter explains the creation of an interface called parser, providing flexibility in changing the implementation of parsing logic.', "The chapter explains the creation of a string parser to convert strings based on certain logic, such as converting to uppercase if the length is less than or equal to 3 and to lowercase if the length is more than 3. The transcript demonstrates the creation of a string parser with a static method 'convert' that changes the input string based on the specified logic of converting to uppercase if the length is less than or equal to 3, and to lowercase if the length is more than 3.", "The chapter provides a specific example of converting a name like 'Navin Reddy' to 'N-A-V' or 'N-R' based on specific requirements. The transcript illustrates a specific example of converting the name 'Navin Reddy' to 'N-A-V' or 'N-R' based on specific requirements, showcasing the practical application of the parsing logic."]}], 'duration': 301.518, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo498544.jpg', 'highlights': ["Creating a custom printer class called 'MyPrinter' with a method to print a specified string, providing flexibility for different implementation options, such as printing to a log file or server.", 'Exploring the need for a separate class for printing data and the flexibility it offers for different implementation options.', 'The chapter explains the creation of a string parser to convert strings based on certain logic, such as converting to uppercase if the length is less than or equal to 3 and to lowercase if the length is more than 3.', "The chapter provides a specific example of converting a name like 'Navin Reddy' to 'N-A-V' or 'N-R' based on specific requirements, showcasing the practical application of the parsing logic."]}, {'end': 1107.539, 'segs': [{'end': 865.832, 'src': 'embed', 'start': 800.983, 'weight': 0, 'content': [{'end': 805.607, 'text': "And then we'll return s.", 'start': 800.983, 'duration': 4.624}, {'end': 808.79, 'text': 'So this is the convert method we have.', 'start': 805.607, 'duration': 3.183}, {'end': 813.015, 'text': 'That simple, right? So whenever I say parse, I want to implement this logic.', 'start': 809.751, 'duration': 3.264}, {'end': 816.017, 'text': 'Now question arises how do you parse object of parser??', 'start': 813.755, 'duration': 2.262}, {'end': 819.644, 'text': 'now, question arise how do we create object of parser here?', 'start': 817.003, 'duration': 2.641}, {'end': 823.466, 'text': 'because if you want to call this print okay, let me repeat what we have done till now.', 'start': 819.644, 'duration': 3.822}, {'end': 824.586, 'text': 'i just wanted to print it.', 'start': 823.466, 'duration': 1.12}, {'end': 825.707, 'text': 'maybe i can print it anywhere.', 'start': 824.586, 'duration': 1.121}, {'end': 827.007, 'text': 'i want to print it in a file.', 'start': 825.707, 'duration': 1.3}, {'end': 828.908, 'text': 'maybe i want to print it on a server side.', 'start': 827.007, 'duration': 1.901}, {'end': 830.709, 'text': 'we can print it anywhere we want.', 'start': 828.908, 'duration': 1.801}, {'end': 834.208, 'text': 'So what I want is I have created this class myprinter.', 'start': 831.926, 'duration': 2.282}, {'end': 837.29, 'text': 'Now based on this logic, it will print it anywhere you want.', 'start': 834.728, 'duration': 2.562}, {'end': 840.112, 'text': 'Maybe you can print it on server, maybe you can print it on a file.', 'start': 837.31, 'duration': 2.802}, {'end': 843.714, 'text': "And I've also created an interface which is a parser.", 'start': 841.052, 'duration': 2.662}, {'end': 847.617, 'text': 'Based on different logic, it will change the code.', 'start': 844.995, 'duration': 2.622}, {'end': 850.799, 'text': 'So if you want to parse it in a format you want, you can do that.', 'start': 848.037, 'duration': 2.762}, {'end': 854.042, 'text': 'And the format which I want to parse is string parser.', 'start': 851.24, 'duration': 2.802}, {'end': 857.204, 'text': 'Depending upon my name, it will change it to uppercase or lowercase.', 'start': 854.422, 'duration': 2.782}, {'end': 858.545, 'text': 'This is my logic.', 'start': 857.244, 'duration': 1.301}, {'end': 865.832, 'text': 'okay?. now i want to pass the object of parser, because to make it print, we have to pass an object of parser as well.', 'start': 858.545, 'duration': 7.287}], 'summary': 'Class and interface created for parsing and printing logic.', 'duration': 64.849, 'max_score': 800.983, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo800983.jpg'}, {'end': 929.513, 'src': 'embed', 'start': 893.641, 'weight': 3, 'content': [{'end': 894.982, 'text': "and let's pass an object.", 'start': 893.641, 'duration': 1.341}, {'end': 895.942, 'text': "So let's not do that.", 'start': 895.022, 'duration': 0.92}, {'end': 897.263, 'text': "We'll directly get an object here.", 'start': 895.982, 'duration': 1.281}, {'end': 905.226, 'text': "Okay, what I'm doing now is I'm passing an object, the lambda expression, not the lambda expression, but anonymous inner class.", 'start': 897.723, 'duration': 7.503}, {'end': 907.987, 'text': 'Okay, now here, I will define that method.', 'start': 905.826, 'duration': 2.161}, {'end': 915.631, 'text': 'So in the parser, as you can see, we have this method, which is pass string, right? So I will say public string pass.', 'start': 908.027, 'duration': 7.604}, {'end': 918.232, 'text': 'So this will only pass the string which you pass.', 'start': 915.671, 'duration': 2.561}, {'end': 921.75, 'text': "Okay, that's a rhyming thing, right? Pass and pass.", 'start': 920.049, 'duration': 1.701}, {'end': 929.513, 'text': 'Okay, so what I will return is, I will say string, because since this is a static method, can you see that? This is a static method, right? Convert.', 'start': 922.29, 'duration': 7.223}], 'summary': 'Passing an object and defining a method in a static method.', 'duration': 35.872, 'max_score': 893.641, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo893641.jpg'}, {'end': 952.21, 'src': 'heatmap', 'start': 922.29, 'weight': 0.722, 'content': [{'end': 929.513, 'text': 'Okay, so what I will return is, I will say string, because since this is a static method, can you see that? This is a static method, right? Convert.', 'start': 922.29, 'duration': 7.223}, {'end': 932.414, 'text': 'So what I will do is, I will say string passer.', 'start': 930.093, 'duration': 2.321}, {'end': 937.927, 'text': 'will say string, parser, dot, convert.', 'start': 935.606, 'duration': 2.321}, {'end': 942.008, 'text': 'so whatever data it takes, it will take s and it will return that same value.', 'start': 937.927, 'duration': 4.081}, {'end': 944.909, 'text': 'so whatever data it takes it to return that after passing.', 'start': 942.008, 'duration': 2.901}, {'end': 946.449, 'text': "that's the logic i want to implement.", 'start': 944.909, 'duration': 1.54}, {'end': 947.489, 'text': 'okay, now you can.', 'start': 946.449, 'duration': 1.04}, {'end': 949.15, 'text': 'you can implement different logic you want.', 'start': 947.489, 'duration': 1.661}, {'end': 952.21, 'text': 'you can implement a logic which you want.', 'start': 949.15, 'duration': 3.06}], 'summary': 'Implementing a static method to convert data and return the same value.', 'duration': 29.92, 'max_score': 922.29, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo922290.jpg'}, {'end': 1043.108, 'src': 'heatmap', 'start': 974.338, 'weight': 0.781, 'content': [{'end': 975.54, 'text': "okay, i'm missing something here.", 'start': 974.338, 'duration': 1.202}, {'end': 978.402, 'text': 'oh, we have to pass it first.', 'start': 975.54, 'duration': 2.862}, {'end': 980.384, 'text': 'right, so i will say str.', 'start': 978.402, 'duration': 1.982}, {'end': 981.204, 'text': 'uh, equal to.', 'start': 980.384, 'duration': 0.82}, {'end': 982.666, 'text': 'so we have to pass the string first.', 'start': 981.204, 'duration': 1.462}, {'end': 983.767, 'text': "we'll say p dot, pass.", 'start': 982.666, 'duration': 1.101}, {'end': 986.658, 'text': 'Okay, logic is written there.', 'start': 985.396, 'duration': 1.262}, {'end': 988.5, 'text': 'So we have to call this pass method as well.', 'start': 986.678, 'duration': 1.822}, {'end': 990.062, 'text': "Now let's run this code.", 'start': 989.061, 'duration': 1.001}, {'end': 991.904, 'text': 'And you can see we got Navin ready.', 'start': 990.483, 'duration': 1.421}, {'end': 998.593, 'text': "So what I'm doing is I'm calling print and when you print it, it will pass the value.", 'start': 991.944, 'duration': 6.649}, {'end': 1006.861, 'text': 'Now the passing will be done based on this logic, because inside this logic what we are doing is inside this pass method, we are saying convert.', 'start': 998.833, 'duration': 8.028}, {'end': 1010.924, 'text': 'so when you say convert based on the logic, it will convert that into smaller case, because the length is big.', 'start': 1006.861, 'duration': 4.063}, {'end': 1017.987, 'text': 'right, if i make it a small, if i, if i make it a small string like nav, if i run this, you can see we got all capital.', 'start': 1010.924, 'duration': 7.063}, {'end': 1018.788, 'text': 'this is what we wanted.', 'start': 1017.987, 'duration': 0.801}, {'end': 1021.417, 'text': "Now here's a twist.", 'start': 1020.376, 'duration': 1.041}, {'end': 1026.638, 'text': 'The twist is, if you observe this code, you can convert this code into lambda expression, right?', 'start': 1022.157, 'duration': 4.481}, {'end': 1031.582, 'text': 'So we can remove this part and you can remove in fact, you can remove the entire return string.', 'start': 1026.659, 'duration': 4.923}, {'end': 1032.582, 'text': "We don't even need that.", 'start': 1031.602, 'duration': 0.98}, {'end': 1043.108, 'text': "And till this point, you can give, okay, so we can, oh, what's wrong? Nothing is happening perfectly here.", 'start': 1033.403, 'duration': 9.705}], 'summary': 'Code demonstration of string conversion and logic, yielding navin and capitalization.', 'duration': 68.77, 'max_score': 974.338, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo974338.jpg'}, {'end': 1021.417, 'src': 'embed', 'start': 998.833, 'weight': 5, 'content': [{'end': 1006.861, 'text': 'Now the passing will be done based on this logic, because inside this logic what we are doing is inside this pass method, we are saying convert.', 'start': 998.833, 'duration': 8.028}, {'end': 1010.924, 'text': 'so when you say convert based on the logic, it will convert that into smaller case, because the length is big.', 'start': 1006.861, 'duration': 4.063}, {'end': 1017.987, 'text': 'right, if i make it a small, if i, if i make it a small string like nav, if i run this, you can see we got all capital.', 'start': 1010.924, 'duration': 7.063}, {'end': 1018.788, 'text': 'this is what we wanted.', 'start': 1017.987, 'duration': 0.801}, {'end': 1021.417, 'text': "Now here's a twist.", 'start': 1020.376, 'duration': 1.041}], 'summary': 'Passing logic converts text to lowercase for shorter length.', 'duration': 22.584, 'max_score': 998.833, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo998833.jpg'}], 'start': 800.983, 'title': 'Implementing logic for data conversion', 'summary': 'Discusses parsing and printing logic, java string parser logic, and implementing logic for data conversion using methods like convert, parser object, pass method, and lambda expressions.', 'chapters': [{'end': 843.714, 'start': 800.983, 'title': 'Parsing and printing logic', 'summary': 'Discusses the implementation of parsing and printing logic using the convert method, creating a parser object, and printing the output on different platforms, such as servers or files.', 'duration': 42.731, 'highlights': ['The chapter discusses the implementation of parsing and printing logic using the convert method.', 'Creating a parser object is explained for implementing the parsing logic.', 'Printing the output on different platforms, such as servers or files, is highlighted as a key functionality.']}, {'end': 937.927, 'start': 844.995, 'title': 'Java string parser logic', 'summary': "Outlines the logic of parsing strings in java using lambda expressions and anonymous inner classes, emphasizing the static method 'convert' and the need to pass an object of the parser for printing.", 'duration': 92.932, 'highlights': ['The chapter emphasizes the logic of parsing strings in Java using lambda expressions and anonymous inner classes.', 'It outlines the need to pass an object of the parser for printing.', "The chapter highlights the static method 'convert' for parsing strings."]}, {'end': 1107.539, 'start': 937.927, 'title': 'Implementing logic for data conversion', 'summary': 'Explores the implementation of logic for data conversion using a pass method and lambda expressions, resulting in converting data based on a specified logic and demonstrating the use of lambda expressions.', 'duration': 169.612, 'highlights': ['Implementing the pass method to convert data based on a specified logic, showcasing the conversion of data into smaller or capital case, resulting in the successful execution of the logic and demonstrating the use of lambda expressions.', 'Utilizing lambda expressions to condense the code and remove the need for certain elements, resulting in a more concise and efficient implementation of the logic for data conversion.']}], 'duration': 306.556, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo800983.jpg', 'highlights': ['The chapter discusses the implementation of parsing and printing logic using the convert method.', 'Creating a parser object is explained for implementing the parsing logic.', 'Printing the output on different platforms, such as servers or files, is highlighted as a key functionality.', 'The chapter emphasizes the logic of parsing strings in Java using lambda expressions and anonymous inner classes.', 'It outlines the need to pass an object of the parser for printing.', 'Implementing the pass method to convert data based on a specified logic, showcasing the conversion of data into smaller or capital case, resulting in the successful execution of the logic and demonstrating the use of lambda expressions.']}, {'end': 1265.741, 'segs': [{'end': 1152.832, 'src': 'heatmap', 'start': 1113.504, 'weight': 0.981, 'content': [{'end': 1116.686, 'text': "right now, don't you think we are doing all this extra thing?", 'start': 1113.504, 'duration': 3.182}, {'end': 1119.629, 'text': 'uh, why to even have this s here?', 'start': 1116.686, 'duration': 2.943}, {'end': 1125.765, 'text': "so what we can do is we can remove this and we can say I'm passing in.", 'start': 1119.629, 'duration': 6.136}, {'end': 1127.406, 'text': 'I will not even specify the parameter.', 'start': 1125.765, 'duration': 1.641}, {'end': 1133.99, 'text': "I will simply say whatever data I'm getting, that will be converted using this thing.", 'start': 1127.986, 'duration': 6.004}, {'end': 1137.432, 'text': 'So we can put string, string parser colon convert.', 'start': 1134.01, 'duration': 3.422}, {'end': 1140.234, 'text': 'So what we are doing is we are passing a method.', 'start': 1137.952, 'duration': 2.282}, {'end': 1142.355, 'text': 'We are not passing any values, we are passing methods.', 'start': 1140.254, 'duration': 2.101}, {'end': 1145.237, 'text': 'If you run this code, you can see it still works.', 'start': 1142.935, 'duration': 2.302}, {'end': 1152.832, 'text': 'right. so we can have our own logic, and you can, you can pass it, you can pass a parser, you can pass a method.', 'start': 1146.468, 'duration': 6.364}], 'summary': 'Discussion on removing unnecessary code and passing methods instead of values for conversion, demonstrating successful functionality.', 'duration': 39.328, 'max_score': 1113.504, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo1113504.jpg'}, {'end': 1187.992, 'src': 'embed', 'start': 1163.639, 'weight': 2, 'content': [{'end': 1169.583, 'text': 'in fact, when i learned the method reference for the first time, the earlier example which we have worked on, that was damn easy.', 'start': 1163.639, 'duration': 5.944}, {'end': 1172.805, 'text': 'right, but this is a bit difficult to understand, i know, but you have to practice this.', 'start': 1169.583, 'duration': 3.222}, {'end': 1176.54, 'text': 'Okay, but then we have used a static method, right?', 'start': 1173.877, 'duration': 2.663}, {'end': 1179.603, 'text': "And that's why we can call directly with a class name.", 'start': 1176.58, 'duration': 3.023}, {'end': 1182.266, 'text': 'What if you have an instance method?', 'start': 1180.084, 'duration': 2.182}, {'end': 1185.089, 'text': 'What if you have this as an instance method?', 'start': 1182.386, 'duration': 2.703}, {'end': 1187.992, 'text': 'then unfortunately, of course, we have to get object of string.', 'start': 1185.089, 'duration': 2.903}], 'summary': 'Learning method references can be challenging, but practice is crucial for understanding.', 'duration': 24.353, 'max_score': 1163.639, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo1163639.jpg'}, {'end': 1265.741, 'src': 'embed', 'start': 1207.33, 'weight': 0, 'content': [{'end': 1210.674, 'text': 'If it is an object, you have to use object name://convert.', 'start': 1207.33, 'duration': 3.344}, {'end': 1213.717, 'text': "So that's how we can use a method reference.", 'start': 1211.435, 'duration': 2.282}, {'end': 1216.939, 'text': 'So I hope you enjoyed this example.', 'start': 1214.698, 'duration': 2.241}, {'end': 1219.201, 'text': 'You can have your own implementation.', 'start': 1217.56, 'duration': 1.641}, {'end': 1222.903, 'text': "I've used the simplest example which I can take.", 'start': 1219.641, 'duration': 3.262}, {'end': 1224.904, 'text': 'So this is open for everyone.', 'start': 1223.643, 'duration': 1.261}, {'end': 1229.606, 'text': 'If you have a better example from this, you are open to comment in the comment section.', 'start': 1224.944, 'duration': 4.662}, {'end': 1234.349, 'text': 'And if that example looks much better than this one, I will surely make a video on that.', 'start': 1230.287, 'duration': 4.062}, {'end': 1241.695, 'text': 'In fact, this is my new strategy nowadays to make the code more simpler, because we have, we have, brilliant minds in the world right.', 'start': 1234.769, 'duration': 6.926}, {'end': 1244.718, 'text': 'so if you can help me with the codes, if you have a simple logic, just send it to me.', 'start': 1241.695, 'duration': 3.023}, {'end': 1248.482, 'text': 'i will make a video on that, and this is open for everyone.', 'start': 1244.718, 'duration': 3.764}, {'end': 1249.203, 'text': "so that's it, guys.", 'start': 1248.482, 'duration': 0.721}, {'end': 1251.325, 'text': "that's it from this video, where we have talked about method reference.", 'start': 1249.203, 'duration': 2.122}, {'end': 1257.252, 'text': 'the important thing here is we are passing a method inside a method which, in functional programming,', 'start': 1251.325, 'duration': 5.927}, {'end': 1261.636, 'text': 'we call it as passing a function to a function which is higher order functions.', 'start': 1257.252, 'duration': 4.384}, {'end': 1262.958, 'text': "so that's it from this video, guys.", 'start': 1261.636, 'duration': 1.322}, {'end': 1265.741, 'text': 'i hope you enjoyed and do click on the like button and do subscribe.', 'start': 1262.958, 'duration': 2.783}], 'summary': 'The video explains method reference in java, inviting viewers to share their own examples and strategies for simpler coding.', 'duration': 58.411, 'max_score': 1207.33, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo1207330.jpg'}], 'start': 1107.539, 'title': 'Method reference explained', 'summary': 'Covers method reference in java, including passing methods as parameters, using static and instance methods, and the concept of higher order functions in functional programming.', 'chapters': [{'end': 1265.741, 'start': 1107.539, 'title': 'Method reference explained', 'summary': 'Covers method reference in java, including passing methods as parameters, using static and instance methods, and the concept of higher order functions in functional programming.', 'duration': 158.202, 'highlights': ['The chapter covers method reference in Java, including passing methods as parameters, using static and instance methods, and the concept of higher order functions in functional programming.', 'The example demonstrates passing a method as a parameter, making it easier for viewers to understand the concept of method reference.', 'The chapter emphasizes the importance of practicing method reference to gain familiarity and ease in implementation in Java programming.', 'The video encourages viewers to contribute their own examples and codes, with the possibility of having their examples featured in future videos.']}], 'duration': 158.202, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/svQKKg3aFzo/pics/svQKKg3aFzo1107539.jpg', 'highlights': ['The chapter covers method reference in Java, including passing methods as parameters, using static and instance methods, and the concept of higher order functions in functional programming.', 'The example demonstrates passing a method as a parameter, making it easier for viewers to understand the concept of method reference.', 'The chapter emphasizes the importance of practicing method reference to gain familiarity and ease in implementation in Java programming.', 'The video encourages viewers to contribute their own examples and codes, with the possibility of having their examples featured in future videos.']}], 'highlights': ['The chapter discusses method reference in Java 8, starting with a comparison to Lambda Expressions.', 'The use of lambda expressions in Java introduces the concept of higher order functions, allowing the passing of a function to another function, resembling functional programming in other languages.', 'Resolving errors by informing that a method is not a variable by using double colons, which is essential for using method reference in Java 8.', "Creating a custom printer class called 'MyPrinter' with a method to print a specified string, providing flexibility for different implementation options, such as printing to a log file or server.", 'The chapter discusses the implementation of parsing and printing logic using the convert method.', 'The chapter covers method reference in Java, including passing methods as parameters, using static and instance methods, and the concept of higher order functions in functional programming.']}